gpt4 book ai didi

c - 带有指向字符的指针的情况

转载 作者:行者123 更新时间:2023-11-30 21:16:13 27 4
gpt4 key购买 nike

我正在学习指向字符的指针。

char ch[250];
char *ch2 = ch;
int z = 2; // corrected this
int *z2;
z2 = &z;

scanf("%s", *ch2);
printf ("%c", *ch2[*z2]);

这是使用 char 数组的正确方法吗?-或者让我解释一下问题,如何通过数组指针打印出第 n 个符号?

输入类似于“asdjhkjhjh” - 只是字符输出将为“d” - 因为这是输入的第二个符号

最佳答案

如果你不说出你想用代码实现什么目标,就很难告诉你你是对的。

:

printf ("%c", *ch2[*z2]);

在您的代码中等于:

printf ("%c", *ch2[2]);

它将打印第三个符号。

如果您希望使用指针算术打印第三个符号,您可以使用

printf ("%c", *(ch2 + 2));

编译器知道,ch2指向字符数组,并且字符需要固定长度的内存,因此它知道如何移动指针“2个大小的字符变量”向右。

关于c - 带有指向字符的指针的情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36331826/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com