• 读入一行字符串


    1.读取char[]

     1 char s[1000000];
     2 int l;
     3 1.
     4 scanf("%[^
    ]",s);
     5 /*说明:在scanf函数中,可以使用%c来读取一个字符,使用%s读取一个字符串,
     6 但是读取字符串时不忽略空格,读字符串时忽略开始的空格,
     7 并且读到空格为止,因此只能读取一个单词,而不是整行字符串。
     8 其实scanf函数也可完成这样的功能,而且还更强大。这里主要介绍一个参数,%[ ],这
     9 个参数的意义是读入一个字符集合。[ ]是个集合的标志,因此%[ ]特指读入此集合所限定的那些字符,
    10 比如%[A-Z]是输入大写字母,一旦遇到不在此集合的字符便停止。如果集合的第一个字符是"^",
    11 这说明读取不在"^"后面集合的字符,既遇到"^"后面集合的字符便停止。
    12 注意此时读入的字符串是可以含有空格的,而且会把开头的空格也读进来。
    13 注意:如果要循环的多次从屏幕上读取一行的话,就要在读取一行后,
    14 在用%c读取一个字符,将输入缓冲区中的换行符给读出来。否则的话,在下一次读取一行的时候,
    15 第一个就遇到'
    ',匹配不成功就直接返回了。这里可以用scanf()或者getchar()函数读取换行符。
    16 */
    17 2.
    18 gets(s);//一直读到遇到换行符),用空字符''取代行尾的换行符'
    '。
    19 3.
    20 while((s[l]=getchar())!='
    ')l++;
    21 //最后记得需要考虑换行符
    22 4.
    23 cin.get(s,1000);
    24 cin.getline(s,1000);
    25 cin.getline(s,100,'@');//字数限制加上截止字符
    View Code

     2.读取string

    1 string s;
    2  int l;
    3  getline(cin,s);
    4 l=s.size();
    5 getline(cin,s,'@');//加上截止字符
    View Code
  • 相关阅读:
    大话数据结构--学习目录
    C语言中的 i++ 和 ++i 的区别
    木紫洁,加油
    vue在组件中使用v-model
    vue的v-model指令原理分析
    表格强制换行 table-layout:fixed
    vue引入jquery插件
    vue中使用stylus编写css
    Java单链表简单实现* @version 1.0
    Java中的面向对象I
  • 原文地址:https://www.cnblogs.com/adelalove/p/11661750.html
Copyright © 2020-2023  润新知