C语言中,数组名是一个不可变的指针常量,不能对它进行加、减和赋值运算。在C语言中规定,数组名是代表该数组的首地址且符合标识符书写规定的变量标识符。不能对它进行加、减和赋值运算。整个数组是以首地址开头的一块连续的内存单元。如有字符数组char c[10],设数组c的首地址为2000,也就是说c...
指针接收数组元素的地址,所以没问题。另外我也不太建议你记住数组名是个地址这种不严谨的说法,哪怕他...
c语言中数组名代表数组首地址,它的值在运行期间是固定不变的,但是在main函数的参数中对指针数组名却可以出现类似于argv++的操作(谭浩强老师的c程序设计中有这 样的程序),这不是前后矛盾了吗?盼高手解决,谢谢。 问题补充: 首先谢谢大家的回答,谭老师的书中写道“main函数的第二个形参是一个指向字符串的指针数组...
宏定义的问题,可以用数组名吗? 只看楼主 收藏 回复 42岁学c语言 毛蛋 1 我写的这样的代码 #define a[1] 1 #define a[2] 2 #define a[3] 3 main() {int i; for (i=1;i<=3;i++) printf("%d",a[i]); printf("\n"); getch(); } 我以为结果就是打印出123,可是编译出错...
不能。因为变量指针可以递增,而数组不能递增,数组可以看成一个指针常量。代码修改:include<stdio.h> int main(void){ int array[5]={2,4,5,23,5};int *p,i;p=array;printf("请输入是五个数:\n");for(i=0;i<5;i++)scanf("%d",&array[i]);printf("\n");printf("输出五个...
请问数组名可以和变量..你的语句是 for (i=0;a[i]!='\n';i++) {};循环变量是i; 循环结束条件是 a[i]=='\n'。只要strlen(a) 没有
不可以,C/C++中 数组名虽然形同一个指针 但是是常值 是不可以进行赋值操作的,同理 也不可以进行++ -- += -= 操作,希望可以帮助到你
首先数组名不能被放在赋值运算符的左边,他不是一个常规意义上的值。
数组名为常量地址不可..指针和地址不要混为一谈,引一段PLP3th的内容:指针:程序员们(甚至一些教科书作者)常常将指针等同于地址,但这实际上是一个误解。指针是一个高级概念,就是对于对象的引用(一个变量,它的值是其它对象的引
switch()的括号里不可以放数组名,只能放整形数据(bool char int long 等)。如果一定要用数组名,可以用if else 实现 include<cstring> 或#include<string.h> if(!strcmp(ay,"ab")){ } else if(!strcmp(ay,"cd")){ } ……else { } ...