diff --git a/jia/chu/main.cpp b/jia/chu/main.cpp index 25f490c..e3793a6 100644 --- a/jia/chu/main.cpp +++ b/jia/chu/main.cpp @@ -15,68 +15,93 @@ typedef bool(*QCHEN)(int a, int b,int *e); int main() { - int a, b; + int c = 0; int d = 0; int e = 0; + __int64 a, b; + /*scanf("%I64d", &a); + scanf("%I64d", &b);*/ + /*char f = 0; char *d = &f;*/ printf("请输入两个整数\n"); - scanf("%d%d", &a, &b); - - - bool ret1 = Add(a, b,&c); - if ( ret1 == 0) + scanf("%I64d", &a); + scanf("%I64d", &b); + if (a > 2147483647) { - printf("两个整数相加结果溢出!\n"); - + printf("输入错误!请重新输入!\n"); + return 0; } - else + else if (b > 2147483647) { - - printf("两个整数的相加结果是;%d\n", c); - + printf("输入错误!请重新输入!\n"); + return 0; } - //printf("两个整数的相减结果是;%d\n,%d", Sub(a, b, d)); - bool ret2 = Sub(a, b, &d); - if (ret2 == 0) + else if (a < -2147483647) { - printf("两个整数相减结果溢出!\n "); - - + printf("输入错误!请重新输入!\n"); + return 0; } - else + else if (b < -2147483647) { - printf("两个整数的相减结果是;%d\n", d); + printf("输入错误!请重新输入!\n"); + return 0; } - - HMODULE hDLL =LoadLibrary ("../Debug/chen.dll"); - if (hDLL == NULL) + else { - printf("加载DLL文件失败\n"); - return 0; + bool ret1 = Add(a, b, &c); + if (ret1 == 0) + { + printf("两个整数相加结果溢出!\n"); - } -// PMUL pMul = (PMUL)GetProcAddress(hDLL, "mul"); - QCHEN qChen = (QCHEN)GetProcAddress(hDLL, "chen"); + } + else + { - bool ret3 = chen(a, b, &e); - - if (ret3 == 0) - { - printf("两个整数相乘结果溢出!\n "); + printf("两个整数的相加结果是;%d\n", c); + } + //printf("两个整数的相减结果是;%d\n,%d", Sub(a, b, d)); + bool ret2 = Sub(a, b, &d); + if (ret2 == 0) + { + printf("两个整数相减结果溢出!\n "); - } - else - { - printf("两个整数的相乘结果是;%d\n", e); - } - - printf("两个整数的相除结果是;%d\n", chu(a,b)); + } + else + { + printf("两个整数的相减结果是;%d\n", d); + } - system("pause"); - FreeLibrary(hDLL); + HMODULE hDLL = LoadLibrary("../Debug/chen.dll"); + if (hDLL == NULL) + { + printf("加载DLL文件失败\n"); + return 0; + } + // PMUL pMul = (PMUL)GetProcAddress(hDLL, "mul"); + QCHEN qChen = (QCHEN)GetProcAddress(hDLL, "chen"); + + bool ret3 = chen(a, b, &e); + + if (ret3 == 0) + { + printf("两个整数相乘结果溢出!\n "); + + + } + else + { + printf("两个整数的相乘结果是;%d\n", e); + } + + + printf("两个整数的相除结果是;%d\n", chu(a, b)); + + system("pause"); + FreeLibrary(hDLL); + } } \ No newline at end of file