要避免C語言中的緩沖區溢出問題,可以使用scanf函數的限定符來限制輸入的字符數。下面是一個示例代碼:
#include <stdio.h>
int main() {
char input[10]; // 限定輸入字符數為10
printf("請輸入一個字符串:");
scanf("%9s", input); // 使用%9s來限制輸入字符數為9
printf("你輸入的字符串是:%s\n", input);
return 0;
}
在上面的示例中,我們使用了%9s來限制輸入的字符數為9,這樣就可以避免緩沖區溢出問題。請注意,由于C語言中的字符串以null結尾,所以我們將限制字符數為9而不是10,以便為null字符留出空間。這樣可以確保輸入的字符串不會超過指定的長度,從而避免緩沖區溢出問題。