c - 在 C 中打印字符串的一部分

标签 c c-strings

有没有办法只打印字符串的一部分?

例如,如果我有

char *str = "hello there";

有没有办法只打印 "hello",记住我要打印的子字符串是可变长度的,并不总是 5 个字符?

我知道我可以使用 for 循环和 putchar 或者我可以复制数组然后添加一个空终止符,但我想知道是否有更优雅的方式?

最佳答案

试试这个:

int length = 5;
printf("%*.*s", length, length, "hello there");

关于c - 在 C 中打印字符串的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4841219/

相关文章:

c - 分配中的段错误

c - 有哪些实现尾调用消除的好方法?

c - 是否可以通过 scanf 向 main 添加参数?

c++ - 在 C++ 中搜索和替换 C 风格的字符串

c - 将用户 C 字符串输入到 c 中的 exec() 函数中

arrays - 我哪里越界了?

c - BSD memcmp(3) 手册和实现的区别

c - 二维字符数组有问题

c - 为什么 main P2((ac, av), int ac, char ** av) ?

c - 我在 C 的输出中收到未知字符