c - 是否有可能只打印字符串的 1 个字节?

标签 c arrays string

我的意思是是否有可能将像(“hello”)这样的字符串打印为“e”或“l”。 我想我可以用这段代码来实现这一点:

char *gg = "hello";
printf("%.4s \n",gg + strlen(gg) - 2);

但它不起作用。

最佳答案

您将需要执行以下操作:

char *gg = "hello";
printf( "%c\n", gg[3] );

这将打印第四个字符(从零开始的数组 = 0、1、2、3,因此 0='h'、1='e' 等)。将 3 更改为您想要的任何字符,但确保不要超出字符串的末尾。 strlen 会告诉您字符串的长度。

关于c - 是否有可能只打印字符串的 1 个字节?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29831023/

相关文章:

c - 如何找到指针数组指向的元素的大小?

检查 C 中 argc 的值

c - 释放内存问题导致我的 C 程序崩溃,但在调试时它不会崩溃?

arrays - 使用 make 或默认初始化的不同大小的数组

javascript - 在推送到数组之前先搜索多维数组,没有重复数据

ruby-on-rails - Rails 3 - 某些集合上的未定义方法

java - 如何使用嵌套循环计算字符串中重复字符的总数?

c++ - 无法将值存储到 vector 结构中

c++ - 无论枚举值的数量如何,枚举大小都是恒定的

string - 检查 MyString[1] 是否是字母字符?