溫馨提示×

scanf與scanf_s函數(shù)的使用方法

小云
178
2023-08-05 16:42:21
欄目: 編程語言

scanf和scanf_s函數(shù)是C語言中輸入函數(shù),用于從標準輸入設(shè)備(鍵盤)讀取數(shù)據(jù)。

scanf函數(shù)的使用方法:

  1. 包含頭文件:#include <stdio.h>

  2. 格式:int scanf(const char *format, ...)

  3. 參數(shù):

  • format: 格式字符串,指定了輸入數(shù)據(jù)的類型和格式。

  • …: 要讀取的變量列表。

  1. 返回值:成功讀取的參數(shù)個數(shù)。如果返回值小于參數(shù)個數(shù),則表示讀取失敗。

  2. 示例:

#include <stdio.h>
int main() {
int num1, num2;
printf("請輸入兩個整數(shù):");
scanf("%d %d", &num1, &num2);
printf("輸入的兩個整數(shù)是:%d 和 %d\n", num1, num2);
return 0;
}

scanf_s函數(shù)的使用方法:

  1. 包含頭文件:#include <stdio.h>

  2. 格式:int scanf_s(const char *format, ...)

  3. 參數(shù):

  • format: 格式字符串,指定了輸入數(shù)據(jù)的類型和格式。

  • …: 要讀取的變量列表。

  1. 返回值:成功讀取的參數(shù)個數(shù)。如果返回值小于參數(shù)個數(shù),則表示讀取失敗。

  2. 示例:

#define _CRT_SECURE_NO_WARNINGS   // 忽略scanf_s的警告
#include <stdio.h>
int main() {
int num1, num2;
printf("請輸入兩個整數(shù):");
scanf_s("%d %d", &num1, &num2);
printf("輸入的兩個整數(shù)是:%d 和 %d\n", num1, num2);
return 0;
}

需要注意的是,scanf_s函數(shù)在讀取字符串時,需要指定字符串的最大長度,以避免緩沖區(qū)溢出。例如:

char str[20];
scanf_s("%19s", str, sizeof(str));

上述代碼中,%19s指定了最大長度為19的字符串。

0