[英]How to read multiple characters using scanf_s?
我应该编写一个程序,输入 2 个字符,它们之间有一个空格。 出于某种原因,我无法使用单个 scanf_s,因为它会引发异常。
是我做错了什么还是根本不可能?
#include <stdio.h>
int main()
{
char character1, character2;
printf("type in 2 small letters with a space inbetween: ");
scanf_s("%c %c", &character1, &character2);
//this part prints big letter version of the one i typed in and its integer value
printf("%c %d\n", character1 - 32, character1 - 32);
printf("%c %d\n", characer2 - 32, character2 - 32);
return 0;
}
因为我使用的是 scanf_s 而不是常规的 scanf 我需要像这样指定缓冲区大小:
scanf_s("%c %c", &character1, 1, &character2, 1);
另一种选择是使用 scanf 但我必须抑制警告:
#define _CRT_SECURE_NO_WARNINGS 1
#define _WINSOCK_DEPRECATED_NO_WARNINGS
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.