如何在c语言中计算字符串长度?
C语言计算字符串长度
1、自定义函数求长度
2、使用strl
c语言中两个长度不一样的数组,怎么找相等的字符?
用strcmp阿,不管长度是否相等都能用。
原型:externintstrcmp(constchar*s1,constchar*s2);
用法:#includestring.h
功能:比较字符串s1和s2。
一般形式:strcmp(字符串1,字符串2)
说明:
当s1s2时,返回值0
当s1s2时,返回值0
当s1s2时,返回值0
即:两个字符串自左向右逐个字符相比(按ASCII值大小相比较),直到出现不同的字符或遇
c语言中怎么实现任意长度字符串输入?
其实核心就是实现动态数组,无论字符串多长,都能够储存。
用getchar一个一个得到字符,直到文件结束。
核心代码实现:
intn0,k100//初始化,字符串长度为0,字符串空间长度为100char*s2NULL,s1(char*)malloc(100)//初始化字符串空间if(s1NULL)return//内存分配失败,返回while((cgetchar())!EOF){//判断是否到文件结束,一个个读取字符if(kltn){//当前字符串长度大于等于字符串空间长度时k*2//长度增长2倍s2(char*)realloc(s1,k)//重新分配内存if(s2NULL){//内存分配失败free(s1)//释放已分配内存return}else{//内存分配成功s1s2}}s1[n]c//字符串赋值字符}s1[n]0//字符串末尾置为0