C语言的问题

2024-11-22 09:17:20
推荐回答(1个)
回答1:

1、关于A:char s[8]; s={"Beijing"}; s被定义为char数组,数组名不能被赋值,所以A错,而且{}只能用在初始化中,这个错上加错。
2、关于B:char *s; s={"Beijing"}; s被定义为char指针,它可以指向一个变量,但是{}只能用在初始化中,而且{"Beijing"}代表的是一个字符串数组,即使在初始化中这样给s赋值也是错误的。
3、关于C:char s[8]; s="Beijing";同样s被定义为一个数组,数组名不能被赋值,所以C错。
4、关于D,虽然它也能通过编译,但事实上,这种赋值也是一种带擦边球性质的,但至少它在某些编译器中是能够通过编译的,所以这个题只有D勉强算对。