簡體   English   中英

大寫功能在Visual Studio 2013(C ++)上不起作用

[英]Capitalizing function isn't working on Visual Studio 2013 (C++)

我正在嘗試使自己的函數在C ++中大寫一個字母(僅stdio.h!),該函數未在VS 2013上按預期方式工作,它總是給我奇怪的輸出有點像alpha的符號) ,但是它(該功能)適用於2010年,

我為大寫字母所做的功能如下:

#include <stdio.h>

int main(){

char i;
scanf_s("%c", &i);
fflush(stdin);

printf("%c", i -= 32);

getchar();
return 0;}

scanf不同, scanf_s要求為c,C,s,S或[類型的所有輸入參數指定緩沖區大小,如下所述:

http://msdn.microsoft.com/en-us/library/w40768et%28v=vs.80%29.aspx

所以這行:

    scanf_s("%c", &i);

實際上應該是:

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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM