C程序设计(第四版) 谭浩强 习题8.6 个人设计
习题 8.6 写一函数,求一个字符串的长度。在main函数中输入字符串,并输出其长度。
代码块:
方法1:
#include <stdio.h>int length(char *s); //定义长度函数int main(){char str[20], *p=str;printf("Please enter string: "); //输入字符串gets(p);printf("The string length is %d\n", length(p)); //调用长度函数并输出字符串长度return 0;}//长度函数int length(char *s){for (int i=0; *s++; i++);return i;}
方法2:(利用动态内存分配)
#include <stdio.h>#include <string.h>#include <stdlib.h>int str_len(char *str);//定义字符串长度函数int main(){char *string;string=(char *)malloc(80*sizeof(char));//动态分配字符串空间printf("Please enter string: "); //此两行输入字符串gets(string);printf("The string length: %d\n", str_len(string)); //调用字符串长度函数并输出字符串长度system("pause");return 0;}//字符串长度函数int str_len(char *str){int i=0;for(; *(str+i++););return i-1;}