Я пытаюсь сделать свою собственную функцию для заглавной буквы в C++, (stdio.h ТОЛЬКО!) Функция не работала так, как ожидалось, на VS 2013, она всегда дает мне странный вывод (somthing like alpha symbol), но он (функция) работает в 2010 году,
функция i, сделанная для заглавной буквы, ниже:
#include <stdio.h>
int main(){
char i;
scanf_s("%c", &i);
fflush(stdin);
printf("%c", i -= 32);
getchar();
return 0;}
scanf_s, в отличие от scanf, требует, чтобы размер буфера определялся для всех входных параметров типа 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);
fflush(stdin)
- неопределенное поведение