关于字符串地址的问题
本帖最后由 lpx9393 于 2020-5-31 10:43 编辑请问各位老大哥,
比如:
char *pa = {
"abc",
"def"
};
for(i = 0;i < 2; i++)
{
printf("%s", pa);
}
i= 0时里面的 pa这个指针是什么意思?字符串是占一个地址还是每个字符占一个地址?这个指针指向a的地址还是整个abc。
还有pa前不加取值操作符*,是因为 %s会自动读取这个地址里面的值?
请不要灌水、蹭鱼币 有谁帮忙解答一下吗,不要来蹭鱼币啊!否则举报啊· Twilight6 发表于 2020-5-31 09:34
你以为我们真的缺你这鱼币?
你以为我在乎鱼币?我缺的是帮我解答的人 Twilight6 发表于 2020-5-31 09:39
呵呵,我们这等于还帮你顶帖了?你帖子这么久没人答早沉了,帮你捞起来还有错?
既然你是想帮我顶贴,那我错怪你了,扣掉的荣誉补还你吧 鱼币{:10_257:} pa代表字符串"abc",它是一个指向"abc"首地址的指针,"abc"的首地址就是字符'a'的地址,但是这是两个不同的概念
%s表示格式输出字符串,就是从字符串的的首地址开始取值,知道取到停止符'\0'为止
*pa 就只是表示字符'a' WoodenlightW 发表于 2020-5-31 11:32
pa代表字符串"abc",它是一个指向"abc"首地址的指针,"abc"的首地址就是字符'a'的地址,但是这是两个不同 ...
谢谢 lpx9393 发表于 2020-5-31 09:13
有谁帮忙解答一下吗,不要来蹭鱼币啊!否则举报啊·
?
你发个回帖奖励就是让人领的,不让人领,什么操作
再说了,我们领了鱼币,也帮你顶了帖。 我在指针这纠结好久了 这个帖子能回不能回?
页:
[1]