前言

众所周知,vs对编程萌新及其的不友好,下面是我在vs中的踩坑(哭)

vs中c语言编写上遇到的小问题

一、清空缓冲区
vs里不能用 fflush(stdin); 应使用 rewind(stdin);
二、接收用户输入
vs中不能用scanf();认为他不安全 应使用 scanf_s();
三、scanf_s
vs中scanf特殊增加一个参数——字符串长度,字符串长度可以直接给定某一个大于字符串真实长度的数字(至少比真实长度大一位,用来存放‘\0’),也可以使用sizeof(字符串名)。
scanf_s(“%s”, hero1.name,50); //vs输入字符串数组时要标明大小
四、getch();函数
在vs中改为了 _getch(); //用来当用户按下某个字符时,函数自动读取,无需按回车
五、关于vs中默认unicode字符集(宽字节字符集)的问题
使用unicode字符集时,可能会出现报错
原因:使用了 Unicode 字符集,而字符串双引号没有加 L 或 _T() 或 TEXT()
栗子:outtextxy(x, y, L”XXX”);
outtextxy(x, y, _T(“XXX”));
outtextxy(x, y, TEXT(“XXX”));
vs中修改字符集在 项目-> 属性->配置属性->高级->高级属性->字符集
修改为多字节字符集时打印字符串可不用加L
说明:
_T 会根据你工程的设置自动转换UNICODE和非UNICODE.
L 就是转为UNICODE

更新于

请我喝[茶]~( ̄▽ ̄)~*

Chen 微信支付

微信支付

Chen 支付宝

支付宝

Chen 贝宝

贝宝