visual studio新手使用教程「建议收藏」

visual studio新手使用教程「建议收藏」目录1.下载安装VisualStudio2.新建工程3.新建项目4.添加源文件5.编译一闪而退的问题6.使用scanf函数报错问题7.VS常用调试程序快捷键8.VS的调试窗口9.工具->选项对于刚刚接触编程的新手来说,最先需要熟练掌握的当然是语言之祖——C语言,而C语言编译器首当其冲的必然是visualstudio,小编入门使用VC6.0,…

大家好,又见面了,我是你们的朋友全栈君。

目录

1.下载安装Visual Studio

2.新建工程

3.新建项目

4.添加源文件

5.编译一闪而退的问题

6.使用scanf函数报错问题

7.VS常用调试程序快捷键

8.VS的调试窗口

9.工具->选项



对于刚刚接触编程的新手来说,最先需要熟练掌握的当然是语言之祖——C语言,而C语言IDE,首当其冲的必然是visual studio ,小编入门使用VC6.0,现在看来VC6.0这一“骨灰级”的工具漏洞百出,早该被淘汰。

1.下载安装Visual Studio

首先,你可以去这里下载最新版的VS,选择正确的安装路径,进行默认安装。

2.新建工程

进入VS之后,点击左上角文件->新建->项目(也可以直接点击起始页面的新建项目)这是新建一个工程的操作,而我们要写代码就需要新建工程。

visual studio新手使用教程「建议收藏」

3.新建项目

可以看到小编选择了Visual C++->空项目,可以自定义工程名称(建议命名规范化,意思就是说,写一个你一看到工程名称就知道是做什么的代码),自定义工程存储位置(一定要把你的代码放在你想放的位置,方便后续维护)然后点击确定。

4.添加源文件

视图->解决资源管理器,接下来开始双击源文件,添加->新建项,这里可以看到下图,我们可以对源文件名称进行重命名:比如以test为例,建立一个名为test的C语言代码,就要命名为test.c,如果命名为test.cpp则为C++程序,如果命名为test.h则为头文件程序。

visual studio新手使用教程「建议收藏」

5.编译一闪而退的问题

小编创建了test.c,插入了如下代码,点击本地Windows调试器,没错,你看到了屏幕一闪而过,这是程序完成了调试执行。

visual studio新手使用教程「建议收藏」

#include<stdio.h>

int main()
{
	printf("hello,world\n");
	return 0;
}

要想看到输出结果有以下方式:

a、将代码改成如下样子:

visual studio新手使用教程「建议收藏」

getchar()函数等待从从键盘获取一个字符串,如果不输入一个字符串,getchar()函数就阻塞等待,这个方法并不完全适用于所有情况。getchar函数,阻塞等待一个字符串,如果此时缓存区有字符的话,那么这个getchar函数就不能解决程序一闪而过不停下来的问题。那么在getchar();之前最好加上fflush(stdin),就确保万无一失了。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>

int main()
{
	int num;
	scanf("%d", &num);
	printf("%d\n", num);
	fflush(stdin);
	getchar();
	return 0;
}

b、不建议使用上述a方式,需要考虑的因素太多,建议在return 0;之前加下面这段代码

system("pause");

上述这句代码是调用了系统接口,让编译器暂停下来,需要添加头文件stdlib.h。

visual studio新手使用教程「建议收藏」

6.使用scanf函数报错问题

scanf函数是从标准输入去获取数据,C语言中默认用空格为界限去控制输入的长度。比如scanf(“%d%d”,&a,&b);当执行到这句代码时候,你需要在显示屏输入两个数字,用空格分割开。比如你输入了10 20。系统会识别到这是两个字符串,将其存储指定位置。

可是今天我想输入的是scanf(“%s%s”,&s1,&s2);我要输入的s1是I am Bob!,s2是What is your name?

系统很难识别那部分是s1,那部分是s2,很容易造成越界访问的问题,所以visual studio会提示不安全的函数。visual studio 在解决这个问题时候实现了一个scanf_s的函数。这个函数有三个参数第三个参数是从标准输入获取的数据长度的长度。

scanf(“%s”,&s1,10);这个函数并不是C语言标准的函数,只是vistual studio 平台的函数,如果你使用scanf_s这样的函数,你的代码不能再其它平台跑。所以不建议使用scanf_s函数。

建议使用#define _CRT_SECURE_NO_WARNINGS将这个错误规避掉。(这句加粗必看,前面可以不看)

visual studio新手使用教程「建议收藏」

visual studio新手使用教程「建议收藏」

接下来给大家介绍一种偷懒方法:我们在平时学习过程中经常会用到scanf函数,为了不让它再出现这类问题,由于

visual studio新手使用教程「建议收藏」

我的VS安装在D盘,所以我打开了它,找到了如上路径,在VC->newc++file中加入#define _CRT_SECURE_NO_WARNINGS

,保存退出。以后我每次新建一个新项目,就会有这么一句话。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>//标准库头文件
#include<stdlib.h>//包含system()函数的头文件

int main()
{
	int a = 0;
	scanf("%d", &a);
	system("pause");
	return 0;
}

7.VS常用调试程序快捷键

调试:编译程序F7
调试:运行程序ctrl + F5
调试:打断点F9
调试:运行到断点位置F5
调试:单步执行F10
调试:单步进入函数F11
调试:结束调试shift+F5
VS常用编辑快捷键 编辑.注释选定内容Ctrl + K,Ctrl + C
编辑.取消注释选定内容Ctrl + K,Ctrl + U
编辑.删除行Ctrl + Shift + L删除所有选定行;如果没有选定行,则删除当前行。

8.VS的调试窗口

在F10单步调试状态下,打开调试->窗口,调试窗口中有监视(可用来监视变量等),内存,线程,堆栈,寄存器,反汇编等窗口用来帮助调试程序。可以通过这些窗口配合逐步调试,查看程序中的运行状况,分析bug可能产生的原因。最常用的就是监视窗口来查看变量的变化情况。有时候监视窗口会和内存窗口显示结果不一致,那肯定要相信内存窗口,监视窗口数据可能来自于寄存器。

visual studio新手使用教程「建议收藏」

9.工具->选项

除此之外,小编还会对编译器设置,方法是打开工具->选项,进行各种设置,比如字体大小、颜色、格式等等。

visual studio新手使用教程「建议收藏」

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/147885.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • robots.txt用法

    robots.txt用法robots.txt的主要作用是告诉蜘蛛爬虫该网站下哪些内容能抓取,哪些内容不能抓取。虽然可以没有robots.txt这个文件,默认就抓取该网站的所有文件,对搜索引擎爬虫没有任何的影响,但是如果你想控制蜘蛛的检索间隔,你就必须用robots.txt来控制。robots.txt不是一种规范,是约定俗成的,主流的搜索引擎都是遵循robots.txt的规则来索引页面,但是一些spam爬虫不会遵循,所…

  • Python缩进规则_python任意代码都可以缩进

    Python缩进规则_python任意代码都可以缩进具有相同缩进的代码被视为代码块。缩进在Python中具有严格的习惯写法:4个空格,不要使用Tabif语句后接表达式,然后用:表示代码块的开始。

    2022年10月13日
  • 清北学堂模拟赛d3t6 c

    清北学堂模拟赛d3t6 c分析:比较神奇的一道题.要把树变成环肯定要先变成链,然后把链给拼接成环.接下来考虑一个脑洞大开的树形dp:设f[i][0]表示i不与父节点相连的链数,f[i][1]表示i与父节点相连的链数,先考虑怎么

  • jQuery添加元素的方法

    jQuery添加元素的方法before() 在被选元素之前插入内容 after() 在被选元素之后插入内容 prepend() 在被选元素的开头插入内容 append() 在被选元素的结尾插入内容

  • Word2vec原理浅析及gensim中word2vec使用

    Word2vec原理浅析及gensim中word2vec使用本文转载于以下博客链接:Word2vec原理浅析:https://blog.csdn.net/u010700066/article/details/83070102;gensim中word2vec使用:https://www.jianshu.com/p/b779f8219f74如有冒犯,还望谅解!Word2vec原理浅析及tensorflow实现Word2Vec是由Google的M…

  • break和continue的作用和区别是什么?

    break和continue的作用和区别是什么?break和continue的作用和区别是什么?一、break和continue的作用二、break和continue的区别三、案例分析一、break和continue的作用break和continue都是用来控制循环结构的,主要是停止循环。二、break和continue的区别1、break用于跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环。注意:(1)只能在循环体内和switch语句体内使用break;(2)不管是哪种循环,一旦在循环体中遇到break,系

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号