c语言中'1'和1的区别

这个问题想了很久都想不通,我去查书,上面说只是字符于其他部分的分隔符,或者是说字符常量的定界符,而非字符常量的一部分。还是理解不了。
知道的大哥帮小弟解释一下!!!
对刚才的解释偶表示感谢,下面偶就举一个例子希望大家就题论题的给小弟解释一下
#include <stdio.h>
int main()
{
int month;
printf("请输入月份:");
scanf("%i",&month);
switch(month)
{
case '1': printf("january\n");break;
case '2': printf("february\n");break;
case '3': printf("march\n");break;
case '4': printf("april\n");break;
case '5': printf("may\n");break;
}
getchar();getchar();
return 0;
}
---------------------------------------------------------
#include <stdio.h>
int main()
{
int month;
printf("请输入月份:");
scanf("%i",&month);
switch(month)
{
case 1: printf("january\n");break;
case 2: printf("february\n");break;
case 3: printf("march\n");break;
case 4: printf("april\n");break;
case 5: printf("may\n");break;
}
getchar();getchar();
return 0;
}
这两个代码有什么区别?给小弟解释一下吧!!!

一、数据类型不同

1、'1':是定义的字符型变量,代表字符1。

2、1:是定义的整型变量,代表数字1。

二、占用内存空间不同

1、'1':在内存堆栈中占用一个字节。

2、1:在内存堆栈中占用四个字节。


三、定义规则不同

1、'1':定义的时候使用长度限制限制的是实际存储长度。

2、1:定义的时候限制的是数据在数据表中的显示宽度,不影响实际值的存储。


参考资料来源:百度百科-整型变量

参考资料来源:百度百科-字符变量

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-10-07

在C语言中,'1'表示字符1(字符型常量); 1表示数字1(数字型常量)。

两者的关系为:1='1' - '0';   // 即将字符1转换为数字1


两者的区别于联系可以通过下面的程序段来说明:

char ch1='1';  // 将字符'1'赋值给字符变量ch1
char ch2=1;    // 将ASCII码值为1的字符赋值给字符变量ch2
int a1 = '1';  // 将字符'1'对应的ASCII码值赋值给整型变量a1
int a2 = 1;    // 将数字1赋值给整型变量a2

第2个回答  2008-04-11
1是一个整型实数占一个整型实数的存储空间;而'1'是一个字符型数据要为其开辟存放'\0'的内存空间;两者不仅数据类型不同而且存储方式也不同.课本上有详解的.
第3个回答  2008-04-11
'1'是字符型的,是一个字符。1是整形的,是一个数字。
第4个回答  推荐于2017-09-04
'1'是字符型...ASCII编码中'1'对应十进制是49
#include<stdio.h>
viod main()
{char c='1';
printf("%d\n",c);
}本回答被提问者采纳

c语言中'1'和1的区别
一、数据类型不同 1、'1':是定义的字符型变量,代表字符1。2、1:是定义的整型变量,代表数字1。二、占用内存空间不同 1、'1':在内存堆栈中占用一个字节。2、1:在内存堆栈中占用四个字节。三、定义规则不同 1、'1':定义的时候使用长度限制限制的是实际存储长度。2、1:定义的时候限制的是...

C语言中的1和1有什么区别?
在C语言中,'1'表示字符1(字符型常量); 1表示数字1(数字型常量)。两者的关系为:1='1' - '0'; \/\/ 即将字符1转换为数字1 两者的区别于联系可以通过下面的程序段来说明:char ch1='1'; \/\/ 将字符'1'赋值给字符变量ch1char ch2=1; \/\/ 将ASCII码值为1的字符赋值给字符变量ch...

c语言中1和“1”有没有区别
c语言中1、1.0、'1'、"1",都是有区别的。1是整数 1.0是实数 '1'是字符 "1"是字符串

1和‘1’是否相同?为什么?(c语言初学)
首先:1和'1'是不相同的。一、从本质上看,内存中存储:1可以使用一个字节存储,在内存中存储就是 0000 0001 '1'字符固定一个字节,对应的ASCII为0x31,因此内存中存储的值是0011 0001。二、从数据类型上看:1是一个数字,可以直接用于数学计算1+1=2;'1'是一个字符,如果直接数学运算虽然不会...

C语言中 1 与’1‘ 有什么区别?
1是整形值,'1'是字符值 如果作为acs码,1就为\\0x01,而'1'是\\0x31(即十进制49)你可以通过输出来比较 printf("%d %d",1,'1');结果是1 49 printf("%c %c",1,'1');结果是 1,作为字符输出时,'1'就是1了,而asc码1是soh,不能正常显示 ...

在C语言中,‘1'、1、“1”有什么区别,他们在内存中分别是怎样储存?
在C语言中,‘1'、1、“1”有什么区别,他们在内存中分别是怎样储存?'1'是一个字符,它在内存中占一个字节,内容是一个ASCii码(其十六进制表示为0x31,十进制表示为49)1表示整数1,它在内存中看机器的

单片机C语言里1和'1'是一样的吗
不一样的,1表示数字,默认十进制的1,'1'表示数字1对应的ASCII码,是一个8位的char类型数据。

C语言:分析'1',"1",和1的区别
‘1’是一个字符它代表一个造型为“1”的“图像” 占一个字节 1是一个数字 他代表的是一个用来计算的数值 而不是一个造型为“1”的“图像 “1”代表一个字符串 字符串是几个字符组合成“一串” 它的实际内容是 ‘1’和‘\\0’ (\\0是结束符被系统自动添加在字符串末尾 表示字符串到此...

c语言中1和'1'有什么不同
一个是数字1,是int型的,一个是字符‘1’,是char型的

c语言 int中01和1有区别吗
c语言 int中01和1有区别的c语言中1、1.0、'1'、"1",都是有区别的。1是整数1.0是实数'1'是字符"1"是字符串int是c语言基本数据类型之一,是整型的意思。 C语言中,有多种不同的数据... 一起跟随小编过来看看吧 01“\\ 0 ”在 c语言中 代表“字符串结束符”。

相似回答