不能用char来定义一个字符串变量,只能用字符数组来存放什么 可以用字符地址来指向字符串常量,字符数组也是一种常用的方法。下面是字符地址的例子,最简单的hello world程序:includevoid main(){char*a=\"Hello World;printf(\"%s\\n\",a);}其实,接触C++以后会发现,有现成的string类可以使用,不过感觉你也应该是初学者,就先不提了。
数组的下标不能是变量,那我可以先定义一个变量,再给该变量赋值,再用它来定义数组吗? 话说可以用malloc函数动态构造数组的方式自定义数组的长度,如果是二维数组,先定义一个元素为数组的数组,然后每个元素再定义一个动态数组,就构成了二维数组。三维类推。
在定义数组时,数组大小必须是常量,不能使变量或变量表达式 int const n=5;尽管2113n的值是常量5,不允许通过n改变,但5261是,并不等于n的值不能改4102变,实际上可以通过指针对其值1653进行修改,比如int*p=n;p=12;这样那个就修改了n的值(将&n赋值给p的时候编译器可能会发出警告),所以n是一个变量,是一个特殊的变量,被称为常变量。因此,n不是一个常量,只是一个不能通过n来修改其值的一个变量。所以不能用它来给定数组的大小。
c语言中什么时候只能用数组而不能用变量 for(i=CAN_recv_head,INC3(i);i。CAN_recv_head;INC3(i))后面有没有;或者if(id3=CAN_recv_queue[i])IRET/收到重复包 后面缺少{}?如果for(i=CAN_recv_head,INC3(i);。