#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int i;
scanf("%d", &i);
printf("i=", i);
cout << "Hello Worlfd! "<<i << endl;
return 0;
}
QT CREATOR中执行不了,好像是哪里要配置依赖库(有了解QT CREATOR的高手可以留言答复下),节省时间,换VS2019执行,结果执行报错
“‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details。”
1 解决办法
- 选中项目,右键选中属性;
- 弹出以下窗口,选中预处理器;再点击图中下拉按钮,点击编辑;
- 在预处理器定义处添加_CRT_SECURE_NO_WARNINGS;
- 点击确定。
方法有效 成功后输出
但是又发现printf()这行的记录没有按期望打印
原来是c++的printf需要输出控制符才可以输出
代码修改如下
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int i;
scanf("%d", &i);
printf("i=%d", i);
cout << "Hello Worlfd! "<<i << endl;
return 0;
}
执行效果
同时重点了解下scanf 和printf的非控制输入(出)符 和 控制输入(出)符 ,scanf()中的m为非控制输入(出)符 %d为控制输入(出)符 (它是控制后面的输出数据类型的)
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
int i;
scanf("m%d", &i);
printf("i=%d", i);
cout << "Hello Worlfd! "<<i << endl;
return 0;
}
输入m123 输出如下
使用控制输入符的例子
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
char j1,j2,j3;
for (int i = 0; i < 3; i++)
{
scanf("%c%c%c",&j1, &j2, &j3 );
printf("j1=%c j2=%c j3=%c", j1,j2,j3);
}
cout << "Hello Worlfd! "<< j1 << endl;
cout << "Hello Worlfd! " << j2 << endl;
cout << "Hello Worlfd! " << j3 << endl;
return 0;
}
输出
参考
scanf用法视频