简单而又易错的C语言问题

2025-01-18 18:44:29
推荐回答(5个)
回答1:

char *ss[6];
这个, []优先级 高于*. 所以是数组,数组里存放指针. 也就是说是个有6个元素的数组,数组里面存放的是char *类型的指针.

(*ss)[6] 因为有括号,所以它是指针, 指针指向一个数组,该数组有6个元素.

ss[1]="right?"; 因为通过前面的说明,可以知道ss[1]是个指针,"right"的首地址给它了, 实现赋值.

一个C语言老手的解释.

回答2:

居然是A错了!

error C2440: '=' : cannot convert from 'char [7]' to 'char [20]'
There is no context in which this conversion is possible

回答3:

A错,除初始化外对字符数组应用strcpy()赋值

回答4:

b错了

回答5:

蒙一个:C