繁体   English   中英

C - 在Visual Studio 2012中使用scanf_s打印错误

[英]C - Error print char with scanf_s in Visual Studio 2012

首先,我的代码:

#include <stdio.h>

int main(){
   int a;
   char b;

   printf("Insert number: ");
   scanf_s("%i",&a);
   getchar();

   printf("Insert character: ");
   scanf_s("%c",&b);

   printf("Number: %i\n",a);
   printf("Character: %c\n",b);

   getchar();
   getchar();
   return 0;
}

我使用scanf_s但是visual studio 2012用scanf说错误。 好吧,int没有问题,但问题是我可以使用char。

保存在var中的char但是当我调用printf这个var时,不显示任何内容,为什么?

我在linux上检查这个并且工作得很好。

对不起我的英文:)

您必须在scanf_s中指定输入字符串或字符的大小

更改

scanf_s("%c",&b);

scanf_s("%c", &b, 1);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM