1. str更为直观的初始化方法为:
char c[]={"I am happy"};
char c[]="I am happy";
2. 调用strlen函数计算字符串的长度,不包括结束字符,用到的标准库为<string.h>:
1 # include <stdio.h> 2 # include <string.h> 3 int main() 4 { 5 char str[]={"racecar"}; 6 int len; 7 len=strlen(str); 8 printf("%d ",len); 9 return 0; 10 }
上面代码返回的结果为7。需要注意的是,strlen的返回结果为size_t类型(无符号整型),其结果不可能是负的,如:
if(strlen(x)-5>0)的判别式结果将永远为真
3. problem set中的问题,判断字符串左右是否对称并输出第一个不对称的,代码如下:
1 # include <stdio.h> 2 # include <string.h> 3 int main() 4 { 5 char str[]={"racedcar"}; 6 int len,i,a; 7 len=strlen(str); 8 i=len/2-1; 9 for(a=0;a<=i;a++) 10 { 11 if(str[a]!=str[len-a-1]) 12 { 13 printf("%c,False ",str[a]); 14 break; 15 } 16 } 17 return 0; 18 }
reference:
http://c.biancheng.net/view/342.html
《C程序设计》p157