C語言如何輸入輸出字符串?
在C語言中,字符串是一組字符的序列,以空字符'\0'結尾。字符串可以用來存儲文本信息,如姓名、地址、電話號碼等。在程序中,我們常常需要輸入輸出字符串,那么該如何實現呢?
輸入字符串
f函數或者gets函數來輸入字符串。
ff函數的格式化字符串為"%s",其中%s表示輸入字符串。下面是一個示例代碼
```cclude
char str[20];tf("請輸入一個字符串");f("%s",
運行結果如下
請輸入一個字符串hello
您輸入的字符串是hello
f函數輸入字符串時,會自動在字符串末尾添加一個空字符'\0'。
gets函數
gets函數是C語言中另一個常用的輸入函數,可以用來輸入字符串。gets函數的參數為一個字符數組,表示輸入的字符串將存儲在該數組中。下面是一個示例代碼
```cclude
char str[20];tf("請輸入一個字符串");
gets(
運行結果如下
請輸入一個字符串hello
您輸入的字符串是hello
需要注意的是,gets函數輸入字符串時,也會自動在字符串末尾添加一個空字符'\0'。但是,gets函數存在一個嚴重的安全問題,即緩沖區溢出。如果輸入的字符串長度超過了數組的長度,會導致程序崩潰或者被攻擊者利用。
輸出字符串
tf函數或者puts函數來輸出字符串。
tftf函數的格式化字符串為"%s",其中%s表示輸出字符串。下面是一個示例代碼
```cclude
char str[] = "hello";
運行結果如下
輸出字符串hello
tf函數輸出字符串時,會自動在字符串末尾添加一個空字符'\0'。
puts函數
puts函數是C語言中另一個常用的輸出函數,可以用來輸出字符串。puts函數的參數為一個字符串,表示要輸出的字符串。下面是一個示例代碼
```cclude
char str[] = "hello";
puts("輸出字符串");
puts(
運行結果如下
輸出字符串
hello
ftf函數或者puts函數來實現。需要注意的是,輸入字符串時要避免緩沖區溢出,輸出字符串時要注意換行符的添加。