在C語言中,可以通過使用scanf
函數來從標準輸入中讀取字符串并賦值給指定的變量。
例如,如果要從標準輸入中讀取一個字符串并賦值給str
變量,可以使用以下代碼:
char str[100]; // 聲明一個字符串變量
printf("請輸入一個字符串: ");
scanf("%s", str); // 讀取字符串并賦值給str變量
printf("輸入的字符串是: %s\n", str); // 打印輸入的字符串
上述代碼首先聲明了一個名為str
的字符數組,用于存儲輸入的字符串。然后使用scanf("%s", str)
從標準輸入讀取字符串,并將其賦值給str
變量。注意,%s
是用于讀取字符串的格式化字符串。
需要注意的是,scanf
函數默認以空格、制表符或換行符作為輸入的分隔符,因此如果輸入的字符串中包含空格,則只會讀取空格之前的部分作為字符串值。如果希望讀取包含空格的完整字符串,可以使用fgets
函數進行讀取。
在使用scanf
函數讀取字符串時,應該避免緩沖區溢出的問題,可以通過限制讀取的字符數來避免,例如可以使用%99s
來限制最大讀取的字符數為99個字符。這樣可以確保輸入的字符串不會超過目標變量的大小。