① c语言在内存中存储"A"要占用个字节 存储'A'要占用几个字节
长度11
“A”是字符串2个字节,‘A’是字符,一个字节
② C语言中‘a’与“a”都代表什么啊内存中占字节数多少
'a'代表一个字符 (占一个字节)
“a”代表一个字符串(占两个字节,第一个字节是a的ASCII码,第二个是0,表示字符串的结束)
③ 你好、请问C语言在内存中存储"A"要占用个字节 存储‘A’要占用几个字节有神马不同谢谢!
1. "A"要占用2个字节,系统会加上一个‘\0’的结束符在A的后面。”A“是字符串常量
2. ‘A’就占用一个字节。‘A’是字符常量
④ 求C语言高手,为何a,b占用12个字节,而不是float的4个字节
这是有关内存对齐的问题,每个CPU都有自己的规则,不过大体设这样子的:
规则1:
数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset
为0 的地方,以后每个数据成员的对齐按照#pragma pack 指定的数值和这个数据成员自身长度中,比较小的那个进行。
规则2:
结构(或联合)的整体对齐规则:在数据成员完成各自对齐之后,结构(或联合)本身也要进
行对齐,对齐将按照#pragma pack 指定的数值和结构(或联合)最大数据成员长度中,比较小的那个进行。
规则3:
结合1、2 颗推断:当#pragma pack 的n 值等于或超过所有数据成员长度的时候,这个n
值的大小将不产生任何效果。
你可以网络一下有很多这方面的资料。这里我就不一一列举了。
⑤ C语言字符数占几个字节,又是多少位。
这个要看字符数是什么数据类型,可以用sizeof(类型)操作符来测试字节数。
1、英文字母:如果是char 型,那么是占用1个字节,8位。如果是string型,应该是两个字节,16位,因为末尾还有个\0字符。
比如:
char c = 'a';//它占用一个字符
char c[] = "a";//占用两个。
char c[] = "abcde";//占用4+1 = 5 个,结尾有一个'\0'
2、数字:有很多种类,从小到大分别为:
short、int、float、long、double
字节为:1个、2个、4个、8个、8个
位数为:8位、16位、32位、64位、64位
3、汉字:理论上说,一个汉字占用两个字节,16位。比如:中国,就占用4个字节,例如:
char c[] = "中国";//占用4+1 = 5个字符
⑥ 字符串“a”在内存中占据的字节个数是几
在C语言中,一个字母字符占一个字节。所以表面上看是占了1个字节。然而C语言中规定,字符串结束后必须跟一个结束字符'\0',因此总共应该是占了2个字节
依次类推
“abc”就是占4个字节
⑦ c语言中,为什么字符串“a”的占用字节长度为2个
“a”这是一个字符串,'a'是字符,你需要好好看看字符与字符串的区别