scanf_s 是 C 語言中讀取格式化資料的安全函數,防止緩衝區溢位攻擊。其語法為:scanf_s(format, ...)。使用步驟:包含頭檔 stdio.h。在變數前面加上 & 符號。確保格式說明符與資料類型相符。檢查回傳值檢測錯誤。
C 語言中scanf_s 的用法
scanf_s 函數是C 語言中用來從標準輸入讀取格式化資料的安全版本。與不安全的 scanf 函數不同,scanf_s 對輸入進行驗證並防止緩衝區溢位攻擊。
語法
<code class="c">int scanf_s(const char *format, ...);</code>
參數
#format
:格式說明符字串,指定要讀取的資料類型。 ...
:一個可變參數列表,提供要讀取的資料的位址。 傳回值
scanf_s 傳回已成功讀取的項目數。如果輸入格式不正確或遇到錯誤,則傳回 -1。
用法
要使用scanf_s,請依照下列步驟操作:
stdio.h
頭文件。 &
符號。 範例
<code class="c">#include <stdio.h> int main() { int age; char name[20]; printf("输入你的年龄:"); if (scanf_s("%d", &age) != 1) { printf("输入无效!\n"); return 1; } printf("输入你的姓名:"); if (scanf_s("%s", name, sizeof(name)) != 1) { printf("输入无效!\n"); return 1; } printf("你好,%s!你的年龄是 %d。\n", name, age); return 0; }</code>
注意事項
%s
格式說明符並指定字串的最大長度。 %n
格式說明符。 以上是c語言中scanf_s的用法的詳細內容。更多資訊請關注PHP中文網其他相關文章!