在visual studio 2017中格式化輸入函數不同於其他c/c++編譯器使用scanf,而是使用scanf_s。
scanf_s相比較於scanf來說更安全,因為使用scanf_s函數需要有一個緩沖參數來規定緩沖區大小,因而不會有內存越界的問題。
在使用scanf_s和scanf輸入整數類型,字符類型和實數類型操作相同,而在輸入字符串時有些許不同,下面我來展示一下這兩個函數輸入字符串時用法不同之處:
scanf
char name[n];
scanf("%s",&name);
scanf_s
char name[n];
scanf("%s",name,n);/*這里的n表示緩沖區大小,最多只能容納n-1個字符*/