数字1和字符1在内存中的表示不一样
数字1和字符1在内存中的表示不一样
#include<stdio.h>
int main()
{
char c;
char d;
c = 1;
d = '1'; //'1'表示一个字符
if (c==d)
{
printf("相等\n");
}
else {
printf("不相等\n"); //输出不相等说明数字1和字符1在内存中的表示不一样
}
printf("c=%d\n",c);
printf("d=%d\n",d);
return 0;
}
输出
不相等
c=1
d=49
#include<stdio.h>
#include<stdlib.h>
int main()
{
char c ;
scanf("%c",&c); //以字符的形式输入
printf("c=%d\n",c); //以数字形式输出,因为1的ASCII码是49
printf("c='%c'\n",c); //以字符形式输出
if( 49 == '1')
{
printf("OK\n"); //说明在内存中49和字符1表示的是一样的
}
system("pause");
}
输入1
输出c=49 c='1' OK 请按任意键继续. . .