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’)並作爲函數返回值。





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