char A[]="like"
请问数组名A和字符串首地址l什么关系?
like赋值给A[]的时候,是把地址赋值给了A[]吗?如果不是那是不是like赋值给a[]只是把like这个字符串分别每个字符单独存在各个数组元素里?
我知道数组名是一个地址,字符串首地址也是一个地址,但是数组在定义时没有赋初值的时候系统有没有已经给他自动分配一个地址来储存字符?
如果在定义的时候给字符数组赋值一个字符串,那么那个时候数组的地址是不是字符串的首地址?
如果char A[]="like"
那么A是不是等于字符l的地址?
字符i的地址是不是等于A[1]元素的地址?
字符k的地址是不是等于A[2]元素的地址?
请告诉我,谢谢(。˘•㉨•˘。)
...="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是错的
字符串地址问题
使用字符串就是使用它的首地址(有时和长度,其实有首地址就够了),而不管这个字符串有多长。举个最明显的例子就是(常量)字符串作为参数传递其首地址。所以你的比较仅仅是地址的比较。参考资料:如果您的回答是从其他地方引用,请表明出处