关于visual studio使用初体验

参考网址一 解决visual studio里面的scanf函数无法使用的问题
参考网址二 c语言中extern用法
参考网站三 VS提示scanf不安全问题

对于一段代码在Devc++和VS2019中运行过程

#include 
int main(void)
{
    printf("Hello world!");
}

在Devc++中可以使用F11直接编译并运行没有错误的源程序

关于visual studio使用初体验_第1张图片
在Visual Studio2019中直接按下F11则进入调试

关于visual studio使用初体验_第2张图片
在VS2019中运行源cpp则需点击Windows调试器


Devc++与VS2019上均可以使用Ctrl+N的方式来添加新源cpp有所不同的是在VS2019直接生成源cpp使得源程序丢掉了归属感

其实就是因为在VS2019中通过在原文件中添加新建项后可以在实现跨文件调用函数,也就是这点有时让人感到摸不着头脑

明明在另一个源cpp中有include也有main函数咋就发生生成错误,VS的解决方案倒是使人醍醐灌顶般,找到一个或多个重

复定义的符号,——main已经在源1.obj中定义,这就解决了为什么发生生成错误,也是VS调用函数的方便,直接在第一个

关于visual studio使用初体验_第3张图片

定义main函数源程序中声明调用函数就可以实现程序简洁,因为把调用的大量函数都拆到其它obj中去了,不过好像也可以

直接使用extern来调用吧,就调用函数与跨文件个人觉得差别不大,在处理输入上VS2019一直反映scanf存在不安全问题就让

关于visual studio使用初体验_第4张图片
一个习惯在Devc++上直接使用scanf来输入数据的感到疑惑,解决方案会提示使用scan_s来解决问题这就产生了上网搜索正

确答案的动力,于是乎就看到了scanf()在读取数据时不检查边界,所以可能会造成内存访问越界而是用scan_s就可以避免此

问题,不过放到其他编译软件就会存在使用上的问题,所以与其不习惯不如直接改成习惯的模式就通过编辑项目属性预处理

器上的定义添加_CRT_SECURE_NO_WARNINGS来解决问题这样就可以正常使用scanf()了,也只是初步体验发现在编译时

会告诉程序存在的语法错误,而VS倒是挺符合安全第一的标准直接边编写程序边提示哪里出了错误,更多功能还得继续体验。
再也不愁函数返回值和没有初始化的问题了

你可能感兴趣的:(关于visual studio使用初体验)