在C語言中,字符串是一系列以空字符(‘\0’) 結尾的字符數組。要輸入和輸出字符串,可以使用 C 標準庫中提供的一些函數。
字符串輸入
C語言提供了多種函數來從控制臺等輸入設備中讀取輸入的字符串,其中最常用的是 scanf() 和 fgets() 函數。
使用 scanf() 函數輸入字符串
scanf() 函數可以用于讀取格式化的輸入,包括字符串。要輸入一個字符串,需要使用 %s 格式標志。以下示例演示了如何使用 scanf() 函數輸入字符串:
#include <stdio.h>
int main() {
char name[20];
printf("Enter your name: ");
scanf("%s", name);
printf("Hello, %s!\n", name);
return 0;
}
在這個示例中,我們首先使用 char 類型的數組 name 來存儲輸入的字符串,然后使用 scanf() 函數讀取輸入并將其存儲在該數組中。 %s 格式標志告訴 scanf() 函數讀取一個字符串,它會自動跳過輸入中的空格和換行符。
使用 fgets() 函數輸入字符串
fgets() 函數可以用于從 stdin 中讀取一個字符串,包括空格和換行符,以及指定要讀取的字符串的最大長度。以下示例演示了如何使用 fgets() 函數輸入字符串:
#include <stdio.h>
int main() {
char name[20];
printf("Enter your name: ");
fgets(name, 20, stdin);
printf("Hello, %s!\n", name);
return 0;
}
在這個示例中,我們將要讀取的字符串的最大長度設置為 20 個字符,并使用 fgets() 函數從輸入中讀取它。第一個參數 name 是用來存儲輸入字符串的緩沖區,第二個參數 20 是指緩沖區的最大大小,第三個參數 stdin 是要讀取的輸入設備。
字符串輸出
字符串的輸出在C語言中比輸入簡單,可以使用 C 標準庫中的 printf() 函數。
使用 printf() 函數輸出字符串
要輸出字符串,只需使用 %s 格式標志,后跟要輸出的字符串。以下示例演示了如何使用 printf() 函數輸出字符串:
#include <stdio.h>
int main() {
char name[] = "ChatGPT";
printf("Hello, %s!\n", name);
return 0;
}
在這個示例中,我們創建了一個字符串常量,將其存儲在 char 類型的數組 name 中,然后使用 printf() 函數輸出該字符串。 %s 格式標志告訴 printf() 函數輸出一個字符串。