scanf和scanf_s函數是C語言中輸入函數,用于從標準輸入設備(鍵盤)讀取數據。
scanf函數的使用方法:
包含頭文件:#include <stdio.h>
格式:int scanf(const char *format, ...)
參數:
format: 格式字符串,指定了輸入數據的類型和格式。
…: 要讀取的變量列表。
返回值:成功讀取的參數個數。如果返回值小于參數個數,則表示讀取失敗。
示例:
#include <stdio.h>
int main() {
int num1, num2;
printf("請輸入兩個整數:");
scanf("%d %d", &num1, &num2);
printf("輸入的兩個整數是:%d 和 %d\n", num1, num2);
return 0;
}
scanf_s函數的使用方法:
包含頭文件:#include <stdio.h>
格式:int scanf_s(const char *format, ...)
參數:
format: 格式字符串,指定了輸入數據的類型和格式。
…: 要讀取的變量列表。
返回值:成功讀取的參數個數。如果返回值小于參數個數,則表示讀取失敗。
示例:
#define _CRT_SECURE_NO_WARNINGS // 忽略scanf_s的警告
#include <stdio.h>
int main() {
int num1, num2;
printf("請輸入兩個整數:");
scanf_s("%d %d", &num1, &num2);
printf("輸入的兩個整數是:%d 和 %d\n", num1, num2);
return 0;
}
需要注意的是,scanf_s函數在讀取字符串時,需要指定字符串的最大長度,以避免緩沖區溢出。例如:
char str[20];
scanf_s("%19s", str, sizeof(str));
上述代碼中,%19s
指定了最大長度為19的字符串。