首页 > 代码库 > C++使用cin.getline使用例题注意点2:字符计数
C++使用cin.getline使用例题注意点2:字符计数
#include<iostream> #include<cstring> using namespace std; void backAround(char *s,char *p); int main(int argc,char *argv[]) { char s[500],p[500]; int i; int j; int len; cin.getline(s,500);//用来确定输入数据 // cout<<s; len = strlen(s);//此处循环用来分离句子单词 for(i=0,j=0;i<len;i++){ if(s[i]!=‘ ‘)p[j++]=s[i]; else {p[j]=‘\0‘;backAround(p,p+j-1);cout<<p<<" ";j=0;} } p[j]=‘\0‘; backAround(p,p+j-1); cout<<p; return 0; } void backAround(char *s,char *p) { if(s>=p) return ; *s^=*p;//利用异或运算进行数据换位 *p^=*s; *s^=*p; backAround(s+1,p-1); }
代码有所参考:不记得是参考的哪个的了,在这里介绍cin.getline()函数使用方法,同时也是更新,cin.getline(s,sizeof,‘a‘);输入一段字符串,以a结尾,但是不包括a.
下面贴上代码:
1 #include<iostream> 2 #include<cstring> 3 using namespace std; 4 void backAround(char *s,char *p); 5 int main(int argc,char *argv[]) 6 { 7 char s[500];//p[500]; 8 // int i; 9 // int j; 10 int len; 11 cin.getline(s,500,‘.‘);//用来确定输入数据 12 cout<<s<<endl; 13 len = strlen(s); 14 cout << len << endl; 15 }
可以看出字符串输出没有 " ."同时strlen计算字符串没有把字符串结束的回车算进去,空格算的,
但是如果回车当作换行符使用的话是会算一个字符的.
目前来看strlen会计算当作换行符使用的回车键,但是不会计算字符串结束的回车键.
C++使用cin.getline使用例题注意点2:字符计数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。