题目
若有定义"char a [10], *p=a; ”,那么下列赋值语句正确的是( )。
A.a [] ="abcdefg";
B.a=”abedefg";
C.*p=”abcdefg";
D.p=”abcdefg ";
解答
参考答案:D.
将字符串赋值给字符数组:
1.定义时直接用字符串赋值。 char a[10]="hello";但是不能先定义再赋值,即以下非法:char a[10];a[10]="hello";
2.利用strcpy。 char a[10]; strcpy(a,"hello");
3.利用指针。 char *p; p="hello";这里字符串返回首字母地址赋值给指针p。另外以下非法:char a[10]; a="hello"; a已经指向在堆栈中分配的10个字符空间,不能再指向数据区中的"hello"常量。可以理解为a是一个地址常量,不可变,p是一个地址变量。
4.数组中的字符逐个赋值。
如果能冲大厂还是冲大厂吧,大厂的培养资源非常丰富,我就是211的计算机类研究生,就我个人来说,感觉如果想找工作的话读研对于你的工作技能提升不大,千万不要抱着逃避就业的心态读研