整理ing
一、getchar与putchar
- getchar():读取一个字符,常用来读取输入中的空格与回车以控制输入。getchar(); c=getchar();
- putchar():输出一个字符,此时效率高于cout,printf。 putchar(‘1’); putchar( c );
二、cin与scanf
- scanf("%s",str); 遇见空格或换行就停止。
- cin>>str; 遇见空格或换行就停止,以文件结束。
三、gets()
- gets(str); 读取一行字符串,遇到换行符停止,可以读入空格。
- 好像在某个标准里被删了,能不用就不用。
- 这里str需要是用char声明的字符串。
四、getline()
- getline(cin,str); 读入一行,可读入空格,遇到换行符停止;
- cin,getline(str,len);读入len个字符到str。
保险起见,输入中多余的空格与换行最好用getchar()读掉。
注意: 用getline()与gets()读入一行字符串时末尾的换行符已经读入且最为终止符,不需要再用getchar()读入换行符。
五、字符串长度的获取
- 头文件:#include < cstring >
- size()与lenth():string s; int len=s.size(); len=s.lenth();
- strlen():char s[500]; int len=strlen(s);
六、其它几个函数
- substr(开始位置i,子串长度len);提取字符串子串,i要在字符串内,i+len超过字符串原长时,只取剩下的。
- insert(插入位置i,插入字符串s);在i位置插入字符串s。
- erase(开始位置i,删除长度len);删除字符串第i个位置后面的len个字符。
- s.find(subs);查找字符串s中的子串subs第一次出现的位置。
- s.replace(开始位置i,长度len,要换上的字符串str);用字符串str替换s中i开始长度是len的一段。
- strcpy(str,str1);将str1复制给str。
- strcat(str,str1);连接两个字符串,放进str。
- strcmp(str,str1);比较两个字符串大小,前面大返回1,前面小返回-1,一样大返回0。
- 注意:以上函数中的位置从0开始。
七、其它
- 字符串间的+:连接两个字符(串)。
- 排序:按照字典序排序,从前往后逐一字符比较,以第一个不相同的字符的大小关系决定字符串的大小关系,若一直相等,字符串长的大(末尾’0’)。