Skip to content
Snippets Groups Projects
Select Git revision
  • daf3caa3ae3689fc1e617437b74a2b5659bb7f59
  • 2025ss default
  • 2024ss
  • 2023ss
  • 2022ss
  • 2021ss
  • 2020ss
  • 2019ss
  • 2018ss
9 results

long-numbers-02.c

Blame
  • long-numbers-02.c 432 B
    #include <stdio.h>
    #include <error.h>
    
    #define N 4
    
    void add_numbers (char *a, char *b, char *s)
    {
      int carry = 0;
      for (int i = N - 1; i >= 0; i--)
        {
          int A = a[i] - '0';
          int B = b[i] - '0';
          int S = A + B + carry;
          s[i] = S + '0';
        }
      if (carry)
        error (1, 1, "overflow");
    }
    
    int main (void)
    {
      char *a = "1234";
      char *b = "3456";
      char s[N] = "0000";
      add_numbers (a, b, s); 
      return 0;
    }