char A[]="like" 请问数组名A和字符串首地址l什么关系? like赋值给A[]的时候

char A[]="like"
请问数组名A和字符串首地址l什么关系?
like赋值给A[]的时候,是把地址赋值给了A[]吗?如果不是那是不是like赋值给a[]只是把like这个字符串分别每个字符单独存在各个数组元素里?

数组名A=字符串首地址(l 的地址)
like赋值给A[]的时候,不是把地址赋值给了A[]。
只是把like这个字符串分别每个字符单独存在各个数组元素里(还有一个串尾符'\0'存在A[4]里)。
温馨提示:内容为网友见解,仅供参考
第1个回答  2017-09-09
拌种潞嘶入睡派顿

...="like" 请问数组名A和字符串首地址l什么关系? like赋值给A[]的...
like赋值给A[]的时候,不是把地址赋值给了A[]。只是把like这个字符串分别每个字符单独存在各个数组元素里(还有一个串尾符'\\0'存在A[4]里)。

c语言中数组名代表数组首地址,它的值在运行期间可以改变吗?
数组名是数组的首地址,就是数组中第一个元素的地址,是常量。常量是不能出现在赋值号=左边作为左值的。楼上的都没有解释清楚,说数组名就是指针是错误的,指针是变量,是用来存储变量地址值的变量,而数组名是常量。一般情况下声明一个数组,比如char a[10];之后,数组名a都是数组的首地址,是一...

输入变量a要取地址,输入字符串为什么不用取地址
因为对于数组a[10],首地址就是a。这个a表示的就是数组的首地址,所以不用取地址了。

“数组名代表了数组的存储首地址,是一个地址常量”这句话具体应怎样理解...
理解为一个指针,该指针指向数组的第一个元素,类型与数组类型相同,指针本身存储的是数组的第一个元素的数组。举例 对于 char a[10]a的内容是一个地址,也就是a[0]的地址;在定义a[10]之后a为一个表示地址的常量。而*a 的内容则是a[0]....

C语言,怎样把数组的首地址赋给另一个数组
不能把数组的首地址赋给另一个数组。因为数组名是常量指针类型,初始化之后是不能够被修改的。 有两种办法实现类似功能,一种是创建指针变量,把地址直接赋值指针变量: 例如int a[100]; int *b=a; 第二种就是直接用循环一一复制每个元素。 例如for(i=0;i<strlen(a);i++) b[i]=a[i]; 本回答由文化艺术...

char a[]="abcd"
关于LZ的问题:a本身的值确实只是一个const char*类型的地址。但C++中cout是被定义好的一个类的对象,它和运算符“<<”连用时<<发生重载,语义被解释为输出<<右端指示的字符串。具体是通过运算符重载实现,类似于调用函数,只是右操作数作为地址被传入这个函数,然后函数内解析地址进行输出。注意重载是...

*a和a[]有什么区别?
如果单纯int *a和int a[]的区别的话,int *a为指向一个整形的指针。而int a[]为一个整形数组,而数组名为其第一个元素的首地址,他们一个是形参,一个是实参,形参指向实参的地址,上面的程序错了,和这两个参数没关系,将Fun含数的第二行改为for (i=0; i<n-1; i+=1)即可实现从大到...

C语言 数组a[ ]什么时候要[ ]什么时候不要[ ]?
数组名即可看作是指针即内存地址(是一串八进制或几进制的数字即常量且不能对它赋值),而数组名若是后面加上【】,则代表的是某个变量,变量可以对它赋值,你说的 int fun(char *a,b),表达有错误不能那样写,得写成nt fun(char *a,char b)可以用数组表示为 int fun(char a[数字],...

c语言,数组名作函数参数问题。
这道题刚刚做到了,正确答案是c 牛客网大佬给出的解答,A,必须在主调函数中说明此数组的大小,不一定例如传递一个char类型的字符串,就不需要。所以A是错的

字符串地址问题
使用字符串就是使用它的首地址(有时和长度,其实有首地址就够了),而不管这个字符串有多长。举个最明显的例子就是(常量)字符串作为参数传递其首地址。所以你的比较仅仅是地址的比较。参考资料:如果您的回答是从其他地方引用,请表明出处

相似回答
大家正在搜