c语言中字符串的常用函数

1、字符串输出函数 puts
格式: puts(字符数组名)
功能:把字符数组中的字符串输出到显示器。 即在屏幕上显示该字符串。


puts和printf 加%s 的区别:
     1.puts不需要格式化控制符,printf需要
                 2.puts只能输出字符串,printf其他类型都可以输出
                 3.puts自带换行,printf没有自带换行




2、字符串输入函数 gets
格式: gets (字符数组名)
功能:从标准输入设备键盘上输入一个字符串。


gets和scanf + %s 区别:
                1.gets只能输入字符串,scanf什么格式都能输入

                2.gets不用加%s   scanf要加%s



warning: this program uses gets(), which is unsafe.
使用gets()时会给出上述警告,提示不安全(也就是输入的字符串大于数组的容量时字符串就溢出到 其他存储空间 了。) gets()函数接收的输入大小不受限制,于是有人利用这个,通过输入覆盖操作系统所占的内存, 制造了蠕虫病毒。 如果是重要的程序,最好谨慎使用这个函数。


 以下字符串函数都是在string.h头文件,使用时需要引用 #include "string.h"。


3、字符串连接函数 strcat
格式: strcat(字符数组名1,字符数组名2) 
功能:把字符数组2中的字符串连接到字符数组1中字符串的后面,并删去字符串1后的串标志 “\0”。本函数返回值是字 符数组1的首地址。就是拼接两个字符串


本程序把初始化赋值的字符数组与动态赋值的字符串连接起来。要注意的是,字符数组1应定义足 够的长度,否则不能全 部装入被连接的字符串



4、字符串拷贝函数strcpy
格式: strcpy(字符数组名1,字符数组名2)
 功能:把字符数组2中的字符串拷贝到字符数组1中。串结束标志“\0”也一同拷贝。字符数名2, 也可以是一个字符串常 量。这时相当于把一个字符串赋予一个字符数组。
 本函数要求字符数组1应有足够的长度,否则不能全部装入所拷贝的字符串。



5、字符串比较函数strcmp
格式: strcmp(字符数组名1,字符数组名2)
功能:按照ASCII码顺序比较两个数组中的字符串,并由函数返回值返回比较结果。 字符串1=字符串2,返回值=0; 字符串1>字符串2,返回值>0; 字符串1<字符串2,返回值<0。 
本函数也可用于比较两个字符串常量,或比较数组和字符串常量。



6、测字符串长度函数strlen
格式: strlen(字符数组名) 
功能:测字符串的实际长度(不含字符串结束标志‘\0’)并作为函数返回值。





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章