LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 3340|回复: 10

如何用printf打印已知长度但是没有0结尾的字符串?

[复制链接]
发表于 2007-8-1 10:42:42 | 显示全部楼层 |阅读模式
比如下面的代码,我只想让他输出Hello,该怎么做?

  1. #include <stdio.h>

  2. int main() {
  3. char *str = "Hello World";
  4. printf("%s\n",str);

  5. return 0;
  6. }
复制代码
发表于 2007-8-1 11:05:04 | 显示全部楼层
你可以把Hello后面的空格改成\0,printf完再改回来,哈哈哈哈
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-1 11:54:38 | 显示全部楼层
Post by x11
你可以把Hello后面的空格改成\0,printf完再改回来,哈哈哈哈

好讨厌的方法...

我已经从其他地方找到最好的办法了

  1. #include <stdio.h>

  2. int main() {
  3. char *str = "Hello World";
  4. printf("%.*s\n", 5, str) ;

  5. return 0;
  6. }
复制代码
回复 支持 反对

使用道具 举报

发表于 2007-8-1 15:52:48 | 显示全部楼层
赞,哪找到的
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-8-1 17:29:03 | 显示全部楼层
Post by x11
赞,哪找到的

CSDN上问人的,给了那个人10分。。。
回复 支持 反对

使用道具 举报

发表于 2007-8-1 17:34:20 | 显示全部楼层
Post by asert
CSDN上问人的,给了那个人10分。。。


呃, 你好亏啊, 建议你先看下格式字符就OK 了!
回复 支持 反对

使用道具 举报

发表于 2007-8-31 18:04:59 | 显示全部楼层
楼主太小气,我每次都是出个50-100分的
回复 支持 反对

使用道具 举报

发表于 2007-8-31 19:22:55 | 显示全部楼层
int i ;
for (i = 0; i < len; ++i)
    putchar(str);
回复 支持 反对

使用道具 举报

发表于 2009-2-18 22:59:42 | 显示全部楼层
以前还真没用过这个方法,呵呵,不错!
回复 支持 反对

使用道具 举报

发表于 2009-3-13 17:08:04 | 显示全部楼层
不太明白,谁给说说。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表