字符串这一节主要写一些比较零散的知识,一边写,一边复习,如有问题,欢迎指正
在C语言中,是没有字符串类型的,那么怎么去定义这个字符串呢
char str[]="hello anthony";
char *str="hello anthony";
char str[14]="hello anthony";
char str[4]={'a','b','c',' '};
基本上就上面几种形式,关于数组,大家都知道元素个数可以少于数组大小,但是不能多于数组大小,所以str[14]实际大小可以是大于14的数,但不能小于14,小于14属于内存越界,因为字符串"hello anthony"是以' '结尾,它也占用一个空间,假如不以' '结尾呢
看一下这个代码
#includevoid main(){ char str[50]; int i; char *string="fhdfhsjdhfkhsdkfhkjshdjkfhsdkfhjkshdkjfhskdfhkshdkjfhjskdfhkjshfkhskjfhskjhfkjshfkj"; for(i=0;i<49;i++){ str[i]=string[i]; } printf("%sn",str); }
字符串没有初始化,并且给到str[i]的也没有' ',那么最终会输出一个什么呢:
fhdfhsjdhfkhsdkfhkjshdjkfhsdkfhjkshdkjfhskdfhkshd烫蘰
最后会出现乱码,以上就是字符串的一些注意事项
sizeof()和strlen()对于字符串来说,怎么去知道它的长度,如果你需要把 包括在内,就用sizeof,如果不想包括,就用strlen()。
递归函数一个函数在它的函数体内调用它自身称为递归函数
一个简单的例子:
long factorial(int n){
if(n==0 || n==1){
return 1;
}else{
return factorial(n-1)*n;
}
}
main......


