每当我在CodeBlocks中启动此代码时,它会崩溃控制台并返回:
处理返回-1073741819(0xC0000005)
代码:
#include <stdio.h>
#include <stdlib.h>
main() {
int next, prev, max;
while (1) {
printf("Number: ");
scanf("%d", next);
if (next > prev) {
prev = next;
max = next;
}
if(next = 0){
break;
}
}
printf("Max number is: %d", max);
return 0;
}
答案 0 :(得分:0)
更改
scanf("%d", next);
到
scanf("%d", &next); // note & operator
%d
说明符期望相应的参数是类型int *
的表达式 - 即指向int
的指针。您正在传递next
中存储的(未初始化的,不确定的)值,这几乎肯定不是有效的指针值。