1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
| cin:getline(char *,int n);
* strlen(str);
* strcpy(str1,str2);
* strtok(str,c) { char str[20]="china,chinese"; char * token; char c[2]=','; token=strtok(str,c); while(token!=NULL) { printf("%s\n",token); token = strtok(NULL,c); } china chinese }
* strcat(str1,str2);
* atoi(str); { char a[10]="100"; int val=atoi(a); cout<<val<<endl; 100 }
* atof(str);
* atoi()和atof()有个缺点就是如果字符串是其他非数字字符,就会返回0,如果是数字0的话,照样返回0,这样就无法识别到底是字符'0'还是其他非数字字符。此时需要另一个函数: strtol() { long int strtol(const char*str,char *endptr,int base); char str[20]="0"; char *endpty; int val; val = strtol(str,&endpty,8); if(endpty!=str) { cout<<val<<endl; cout<<endpty<<endl; } else { cout<<"转化的是字符!"<<endl; } 543 9cend$3 }
* strcmp(const char*s1,const char*s2) * strstr(const char*s1,const char*s2); { char s1[10]="aabb"; char s2[10]="ab"; char *value; value=strstr(s1,s2); if(value!=NULL) { cout<<value<<endl; } else { cout<<"找不到"<<endl; } abb }
*char * strerror(int errnum);
|