字符 '0' 和 '\0' 及整数 0 的区别

字符 '0' 和 '\0' 及整数 0 的区别

字符型变量用于存储一个单一字符,在 C 语言中用 char 表示,其中每个字符变量都会占用 1 个字节(8 位二进制数)。

整型 int 在内存中占用空间为四个字节(32位二进制数)。

字符 '0':char c = '0'; 它的 ASCII 码实际上是 48,内存中存放表示:00110000。

字符 '\0': ASCII 码为 0,表示一个字符串结束的标志。这是转义字符(整体视为一个字符)。由于内存中存储字符,依然是存储的是对应字符集的字符编码,所以内存中的表现形式为 00000000。

整数 0 : 内存中表示为 00000000 00000000 00000000 00000000,虽然都是 0,但是跟上面字符 '\0' 存储占用长度是不一样的。

 

下面用代码简单测试了下,总结出:字符0不等于字符串0,不等于整型0。字符\0等于整型0

#include <stdio.h>

int main(void)
{
	int i=0;
	char c1='0';
	char c2='\0';
	char* s="0";
	
	printf("%d\n",i);
	printf("%d\n",c1);
	printf("%d\n",c2);
	printf("%d\n",s);
	
	//相等吗 
	printf("%d,%d,%d\n",i==c1,i==c2,i==s);

    return 0;
}

 

posted @   C羽言  阅读(975)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
点击右上角即可分享
微信分享提示