假设我有
char *names[] = { "Tom", "Jerry" };
我想使用 printf
打印“Jerry”中的“e”。我的第一直觉是
printf("%c\n", *names[5]);
但是当我应用我一直在学习的关于指针的知识时,我意识到这完全是垃圾代码,因为 5 指的是 names
中不存在的第五个指针,而不是“Jerry”中的“e” ”。 names
中包含的指针将永远只引用其各自字符串中第一个 字符的内存地址。
看来我真正需要做的是在names[1]
中添加一个字节来指向,并打印“Jerry”中的“e”。但我不确定如何执行此操作,或者在 C 中是否允许这样做。
实现此目标的最佳方法是什么?提前谢谢你。
最佳答案
我想你要找的是 printf("%c\n", names[1][1]);
。
关于c - 如何使用 printf 从字符串数组中打印单个字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26217464/