关于字符的
这个不应该是char name吗? 是题目上的char 这是字符数组,是有 5 个元素的字符数组,如果这样定义:
char name = "fishC" ;
那么,name 是一个字符串,占用的内存就是 6 个字符了。 jackz007 发表于 2021-1-16 13:55
这是字符数组,是有 5 个元素的字符数组,如果这样定义:
那么,name 是一个字符串,占 ...
不是在后面应该有个\0吗? a13766971255 发表于 2021-1-16 13:57
不是在后面应该有个\0吗?
为什么说应该,理由是什么? 题目中数组的元素分别单个引用,是字符数组,在系统中只占5个位置,但系统不会在最后放'\0'。
若改为char name={"fishc"},变为“字符串数组”,系统会在末尾填‘\0’,所以数组长度为6 jackz007 发表于 2021-1-16 14:00
为什么说应该,理由是什么?
哦哦,字符元组不用加\0,字符串要加\0对不? vaety 发表于 2021-1-16 14:03
题目中数组的元素分别单个引用,是字符数组,在系统中只占5个位置,但系统不会在最后放'\0'。
若改为cha ...
字符数组不用加\0,字符串要加\0对不? a13766971255 发表于 2021-1-16 14:04
哦哦,字符元组不用加\0,字符串要加\0对不?
是的,只有定义字符串才会有这个附加的操作。 字符串和字符数组的区别在于,字符串一般作为整体来引用 字符数组的初始化可以通过字符串常量来赋值:
char a[]= {"Good!"}或者char a[]= "Good!";
这与字符数组的定义方式有区别:
char b[]= {'G','o','o','d','!'};
数组b的长度是5,而a的长度是6.因为数组a多一个系统自动加上的字符串结束标志'\0'。
你这是字符数组,所以不用6
页:
[1]