C与字符串string处理有关的四个函数
注意下文介绍的四个函数中strcpy和strcat是没有返回值的所以我们不能灵a=strcpy(s1,s2)
比如我们令s3中括号=stract()就会报错 一 strlen函数(求字符串长度) 从字符串首字符开始监测计数监测到/0立即停止 计数不包括/0 strlen(s)计算的长度=sizeof(s)-1
例题
二 字符赋值(复制)strcpy 语法结构 strcpy(s1 s2) 就是把字符串s2的值给s1的意思 相当于s1=s2 s2比s1长的话s2会直接把s1覆盖掉 s2比s1短的话 s1的字符串也会被s2的字符串完全替代 短
相等
长
注意这里1 printf(%s)是要把s1用字符串类型打印出 2 字符串定义一定要按数组格式定义加中括号 例题
第一部先连接 那么p=abcdabcde strlen(q)=3 第二部赋值 把p+3 也就是dabcde用q赋值 也就是dabcde变成abc 最后得到结果p为abcabc长度为6 三 strcat函数(字符串连接) strcat(s1,s2)无返回值 就是把s1和s2连接起来 本质是把s2连接到s1上面形成新的s1
四,字符串比较strcmp函数 1字符串比较原理 从第一个字符开始逐个对不检验 直到s1 与s2出现不同字符或/0停止 出现不同字符就比较这两个字符的ASKL码值大小 谁大就s1>s2返回值为正数 注意只比较第一个不同字符的阿克斯码
例如
第一个不同的字母是s1的b和s2的f f阿克斯码值更大所以s1<s2返回值为负 字符串比较的例题
记住数组名也就是字符串的名字是地址 是星p后面的p对应的 补充 五,sizeof()操作符(不是函数) 求一个类型或者一个字符串的字节数 1求类型
本题选A sizeof(double)的值为8表示double类型占字节数为8 2.sizeof(s)s表示一个字符串的数组名 五 补充 字符串中的空格占字节数也占长度都只占一个