有人可以告诉我这里出了什么问题吗?
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#define ERROR 0
#define MAX_INPUT_LINE 80
#define print(x) {fputs(x,stdout);}
#define SUCCESS 1
int main (long argc, char *argv[])
{
int mode;
printf("1 for hexidecimal or 2 for binary");
scanf("%d", mode);
printf("\n\n\nThe value of mode is %d\n", mode);
return 0;
}
当我为二进制输入2时,我得到了这个:
The value of mode is 2665564
显然我应该得到2,我做错了什么?它是我的编译器,是因为我使用的是 Cygwin 吗?为什么模式不是2??