在 scanf 中使用 %c 并将值赋给 C 中的 int 变量?
Using %c in scanf and assigning the value to an int variable in C?
int main()
{
int i= 0;
printf("i value is %d\n",i);
scanf("%c", &i); // I am giving an input of 255 here
printf("i after scan %d\n",i); // This prints 50. How???
return 0;
}
谁能解释一下 printf 语句是如何给出 50 的?我有一台小端机器。
您的程序甚至无法编译,因为 I
未声明。我假设这是一个错字。由于您正在扫描 %c
它只会读取一个字符,即 2 来自 255。现在 2 的 ascii 代码为 50,正在打印。
int main()
{
int i= 0;
printf("i value is %d\n",i);
scanf("%c", &i); // I am giving an input of 255 here
printf("i after scan %d\n",i); // This prints 50. How???
return 0;
}
谁能解释一下 printf 语句是如何给出 50 的?我有一台小端机器。
您的程序甚至无法编译,因为 I
未声明。我假设这是一个错字。由于您正在扫描 %c
它只会读取一个字符,即 2 来自 255。现在 2 的 ascii 代码为 50,正在打印。