一世轻尘 发表于 2020-12-19 10:48:53

字符串空格问题

xdjmm,那这个问题都有哪些解决方式呢???(除了gets){:10_254:}

jackz007 发表于 2020-12-19 11:08:44

本帖最后由 jackz007 于 2020-12-19 11:13 编辑

      如果不用 gets() 很困难,在不知道字符串具体分几段的情况下,用 scanf() 读取根本不可能。
      用 getchar() 循环读取字符串,应该是最好的解决方案。
#include <stdio.h>

int main(void)
{
      char c , s                                                               ;
      for(int i = 0 ; i < 255 && (c = getchar()) != '\n' ; s = c , s = '\0') ;
      printf("%s\n" , s)                                                            ;
}
      编译、运行实况
D:\00.Excise\C>cl x.c
用于 x86 的 Microsoft (R) C/C++ 优化编译器 19.28.29334 版
版权所有(C) Microsoft Corporation。保留所有权利。

x.c
Microsoft (R) Incremental Linker Version 14.28.29334.0
Copyright (C) Microsoft Corporation.All rights reserved.

/out:x.exe
x.obj

D:\00.Excise\C>x
hello , world , good morning !
hello , world , good morning !

D:\00.Excise\C>
页: [1]
查看完整版本: 字符串空格问题