读取了一个字符串 ,为20个空格,我要怎样判断出来这都是空格?如果我读取了一行只是一个回车,这有怎样判断?
你好!
不管是多少个空格的字符串,使用trim后,结果是空串。
你可以自己试验下,string st = “ ";st = st.trim();
不管是多少个空格的字符串,使用trim后,结果是空串。
你可以自己试验下,string st = “ ";st = st.trim();
温馨提示:答案为网友推荐,仅供参考
第1个回答 2013-09-23
刚才有人问了。
下面判断 空白行。
#include<stdio.h>
int main(){
char s[80];
int flag=1,i;
fgets(s,80,stdin);
printf("%s -- length=%d\n",s,strlen(s));
for (i=0;i<strlen(s);i++) {
if (0xff & s[i] > 0x20) {flag=0;break;};
}
if (flag==1) printf("blank line\n");else printf("not a blank line\n");
return 0;
}
空格 用 ASCII 值 0x20 判断。本回答被提问者和网友采纳
下面判断 空白行。
#include<stdio.h>
int main(){
char s[80];
int flag=1,i;
fgets(s,80,stdin);
printf("%s -- length=%d\n",s,strlen(s));
for (i=0;i<strlen(s);i++) {
if (0xff & s[i] > 0x20) {flag=0;break;};
}
if (flag==1) printf("blank line\n");else printf("not a blank line\n");
return 0;
}
空格 用 ASCII 值 0x20 判断。本回答被提问者和网友采纳
第2个回答 2013-09-23
空格的ASCII码为32,通过判断
if(int(a[n])==32)
i++;追问
if(int(a[n])==32)
i++;追问
这样不就需要遍历20个空格,有没有简单的方法?
追答那你就写一个20空格的字符串,
int strcmp(char *str1,char *str2)
str1str2,返回正数.str1=str2是返回0
再说空格也是字符,不遍历你想咋做?
第3个回答 2013-09-23
while(' ')