所以,char str[]="";是在定义的时候赋予str一个空字符串,但是内存中有存'\0',也可以写成 char str[]={""}; 赋值字符串的时候花括号可以去掉。这么一来再看你的另一个语句 char str[]={};里面没有双引号,其实就是没有常量赋值给str,这里等价于 char str[].如果是要赋值字符串的话...
数组str 的长度不是10,而是11,这点请务必记住,因为字符串常量"I am happy" 的最后由系统自动加上一个'\0') 因此,上面的初始化与下面的初始化等价 char str[ ]={'I',' ','a','m',' ','h','a','p','p','y','\0'}; 而不与下面的等价 char str[ ]={'I',' ','a','m',' ','...
include int main(){char str[20] = "bilibili";int n;scanf("%d", &n);for (int i = 0; i < n; i++){printf("%c", str[i]);}return 0;} 你可以把数组a传递给函数fun(),在函数fun()内部定义一个int变量many表示不合格的人数,然后使用for循环遍历数组a,并判断数组元素是...
那就有区别了,char str[]="abc" ;相当于char str[]={'a','b','c',0 } ;这样就看出区别了,数组长度不一样,一个是4因为会自动添加一个结束符,一个是3不会添加结束符。
C.char str[2] [3] ={{'a','b'},{'c','d'},{'e','f'}}D.char str( ) ={'a','b','c'} 相关知识点: 试题来源: 解析 A [解析] 本题考查的是字符数组的初始化。选项B) 中用3个元素初始化大小为2的数组,越界了;选项C) 中应该是2行3列的数组,题中使用3行 2列初始化;选项D) ...
以下对字符数组初始化的方法中,错误的是(C)。 A. char str[]={“Hello”}; B. char str[]=“Hello”; C. char str[]
A. char str[ ]="Beijing"; B. char str[20]; str="Beijing"; C. char str[20]={"Beijing"}; D. char str[20]={'B', 'e', 'i', 'j', 'i', 'n', 'g'}; 相关知识点: 试题来源: 解析 B.char str[20]; str="Beijing"; 反馈...
以下对字符数组str初始化不等价的是( )。 A.char str[ ]="hello";B.char str[ ]={'h','e','l','l','o','\0'};C.char str[ ]={'h','e','l','l','o',0};D.char str[ ]={'h','e','l','l','o'};相关知识点: ...
对于字符数组,有如下初始化方式: Char str[10]={“option”}; 请在下列选项中选出与此等价者A.char str[10]=”option”;B.cha
下列初始化字符数组的语句中,错误的是___。 A. char str[5]="hello"; B. char str[]={'h','e','l','l','o','\0'}; C. char str[5]={"hi"}; D. char str[100]=""; 相关知识点: 试题来源: 解析 C.char str[5]={"hi"}; 反馈...