用C显示ASCII码

用C显示ASCII码,c,ascii,C,Ascii,我对程序有问题——我编译并运行它,第一行显示在控制台中,但当我输入任何字符并按Enter键时,程序就会崩溃,Windows没有响应 #include <stdio.h> int main(void) { int e; char ch; printf("\n Enter a character : "); scanf("%c",ch); e=ch; printf("\n The ASCII value of the character is : %d",e); getch(); }

我对程序有问题——我编译并运行它,第一行显示在控制台中,但当我输入任何字符并按Enter键时,程序就会崩溃,Windows没有响应

#include <stdio.h>
int main(void)
{
int e;
char ch;
printf("\n Enter a character : ");
scanf("%c",ch);
e=ch;
printf("\n The ASCII value of the character is : %d",e);
getch();
}
你需要

scanf("%c",&ch);

scanf不需要变量的值,它需要变量本身来写入,因此scanf需要的是chand的地址而不是ch的值。

scanf%c,ch;谷歌关于如何使用scanf的解释是错误的。请改为scanf%c,&ch;scanf想要一个指针你说得对,谢谢你@Xenix,但你需要从中学习其他东西。如何调试程序。你应该一行接一行地注释掉,直到程序不再崩溃。这将使你走上成功之路。这就是为什么你有这么多的反对票。@Prof.Falken,我比你快:P