c语言 怎么将字符串中的地址取出其内存输出
展开全部
字符串是一连串地址连续的内存空间,每个地址对应字符串元素的地址。
我们一般说的字符串的地址,就是指字符串首元素的地址。
比如:char str[10];这样的数组。它的地址就是其str[0]的地址。
所以可以表示为str,或者&str[0]。
如果说取其他元素的地址,&str[对应下标]就可以了。
因为地址连续,定义指针接收,还可以通过指针加减获取对应元素地址。
比如char *p=&str[2];(我们让指针指向第3个元素地址),那么p++;p就是指向了第4个元素地址。同理p--;就指向第2个元素地址。
注意,数组名str,可以表示数组首地址,但其本身是常量指针,不能赋值。
另外打印地址,可以用格式%p
我们一般说的字符串的地址,就是指字符串首元素的地址。
比如:char str[10];这样的数组。它的地址就是其str[0]的地址。
所以可以表示为str,或者&str[0]。
如果说取其他元素的地址,&str[对应下标]就可以了。
因为地址连续,定义指针接收,还可以通过指针加减获取对应元素地址。
比如char *p=&str[2];(我们让指针指向第3个元素地址),那么p++;p就是指向了第4个元素地址。同理p--;就指向第2个元素地址。
注意,数组名str,可以表示数组首地址,但其本身是常量指针,不能赋值。
另外打印地址,可以用格式%p
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询