1错/* */之间的注释c编译的时候跳过不执行,放哪里都不影响
3错,运算时只要运算式中有一个或者多个优先运算符就成立比如:
float m=4.5,k;
int n=1;
k=m/n(k为单精度,只要运算中有单精度就成立)
如果是这样就是错的
float k;
int i=3;
k=i/2(因为运算式整个为int类型,赋值给k后数据遗失结果为1.000000)
如果把k改为k=i/2.0就正确了结果为1.5000000;
4错:这个是c语言语法规定的
A.a是一个3行4列的二维数组,p是一个数组指针,指向一个拥有4个元素的数组。p=a,令p指向a的第一行元素;B.a是一个3行4列的二维数组,p是一个拥有4个元素的数组,数组中的每个元素都是int型的指针。p=a,试图将一个数组赋给另一个数组,错误;
C.a是一个3行4列的二维数组,p是一个int型的指针,p=a,a的每个元素是拥有4个int元素的数组,p与a类型不匹配,错误;
D.a是一个3行4列的二维数组,p是一个二级指针,指向一个int型的指针,*p=a,此时p未初始化,是野指针,*p试图取其内容,严重错误。