Below code simple check overflow in C++
Code Block |
---|
#include<stdio.h> #include<limits.h> #include<stdlib.h> int addOvf(int* result#define INT_MAX 2147483647 #define INT_MIN -2147483648 int safe_add(int &sum, int a, int b) { { if ( a > INTabs(a)>INT_MAX - abs(b)) { return -1; else cout << {"overflow : " << a << *result = a + b; "+" << b << endl; return 0; } } int main() { } int *res = (int *)malloc(sizeof(int)); int x = 2147483640; sum int= ya =+ 10b; printf("%d", addOvf(res, x, y)); printf("\n %d", *res); getchar(); return 1; return 0; } |
Time Complexity : O(1)
Space Complexity: O(1)