发布网友 发布时间:2022-05-22 08:51
共1个回答
热心网友 时间:2024-03-07 17:23
前两个图片说的确实是用变量定义数组长度的(后面再说),黑框里的代码就不是了,那是取arr数组的下标为i的值赋给Te——这无论C或C++都是合法的操作。纯C编译器是不允许用变量定义数组长度的,编译都过不了。而后来的有些C++的编译器允许这样做的,但大多数用来做定义数组长度的变量要用const修饰,叫值不变变量,但纯C编译器即使用const修饰的变量也不允许用来定义数组长度。你说的“C和C++”都是允许的可能是你的编译器是C++兼容C的,时下纯C编译器已经很难遇到了……供参考。纯C编译器是不允许用变量定义数组长度的,编译都过不了。而后来的有些C++的编译器允许这样做的,但大多数用来做定义数组长度的变量要用const修饰,叫值不变变量,但纯C编译器即使用const修饰的变量也不允许用来定义数组长度。你说的“C和C++”都是允许的可能是你的编译器是C++兼容C的,时下纯C编译...
C语言中数组长度不能用变量定义吗?C语言里,所有变量空间都是在程序运行之初向系统申请的,包括指针,除了一些动态申请方式如malloc函数。没有申请的空间系统是不允许读写的。那么如果一个数组大小是变量定义,则在程序运行前不能确定数组大小,也就无法申请,故不允许。所以,解决的办法便是通过malloc函数,即 int a[n];可改为 int* c...
数组长度为什么不能是变量数组的大小不能用变量表示的,是因为在编译连接期间内存要按照你制定的长度给数组分配相应的内存空间,如果是变量的话就没有办法给它分配了,你可以用符号常量来解决,在开头用:define m 100 define n 100 然后在程序中就可以定义u[m][n]二维数组了,当不一定非要是100,可以是任何一个正整数。C...
C语言的数组问题(程序代码如下) 为什么v[2]的值总是前面一个变量sum一 ...定义数组的时候是v[2],这个数组长度是2,两个元素,对应下标是0和1。但是下面却用到了v[2]这个元素,那么在定义数组的时候,就要定义成int v[3]才行。
C语言变量数组问题(a) =32? 答:因为数组a有8个元素,因为是int型数组,所以每个元素占4个字节空间,4*8=32,sizeof函数功能是取得一个变量或结构的大小,为什么sizeof (a[0])是4? 答:因为int型数组每个元素占4个字节空间,a[0]是指第一个数组元素,所以结果为4 望采纳 ...
C++里如何实现用变量定义数组的长度3、函数中,用while循环实现字符数组长度的判断。4、主函数中,先保存一个整型变量,保存计算出的字符串数组长度。5、接着,定义一个字符串数组,保存统计的字符串。6、输入统计的字符串,保存在数组str中。7、计算字符串数组的长度,保存在变量n中。8、最后,输出计算得到的字符串长度。
C语言里面 数组都要事先定义长度吗 ?C语言数组的长度是预先定义好的,在整个程序中固定不变。操作方法如下:1、首先,点击进人visual studio,然后新建一个c项目。2、接着,在源代码中添加c项目所使用的头文件,输入即可,如下图所示。3、首先定义一个整型数组array,将其长度设置为4。4、然后定义一个整型数据length,该参数用来储存数组...
关于c字符数组的问题,请为小弟解开心中的疑惑char a[]="12345"是系统根据字符串的实际长度来为a设定长度,所以长度是6。而char a[10]="12345“则是一开始就设定了数组长度为10,再往数组中初始化数据,不会改变数组本身的长度。总之,在声明时指明了长度的数组,在sizeof时求得的就是指定的长度。声明时没有指定长度的,根据初始化数据列表的...
C语言中如何定义数组C语言中,同变量一样;数组也必须先定义后使用。一维数组的定义形式:类型标识符 数组名[常量表达式];例如int a[10]; 其中a为地址常量。如变量的定义一样,int a ;double a;float a等;数组的定义只是把后面的变量名改为数组名而已。int a[10]就是定义了一个数组名为a的数组;此数组有10...
C语言有没有在运行时求数组长度的方法1、c语言中,定义数组后可以用sizeof命令获得数组的长度(可容纳元素个数)。例如:int data[4];int length;length=sizeof(data)/sizeof(data[0]); //数组占内存总空间,除以单个元素占内存空间大小printf("length of data[4]=%d", length ); //输出length of data[4]=4 2、但是,通过...