Visual Studio 2019安装使用C语言程序(VS2019 C语言)

所属分类: 软件编程 / C 语言 阅读数: 131
收藏 0 赞 0 分享

新的Visual Studio 2019出来已经有一段时间了,博主也是一开始就从vs2017换到了vs2019,发现整体的操作流程还是有一定的改变,因为之前发表过一个vs2017的博客,对Visual Studio IDE和风格确实非常喜欢,博主在vs2019中使用的字体为Fira code,接下来是编写c程序。

1 选择创建新项目

2 选择空项目,单击下一步

3 填写项目名称(生成的文件夹名称和工程名都是这个),我这里填入hello,保存位置选择为桌面,此时应该在工程建立ok后,桌面会生成一个hello的文件夹,勾选解决方案和项目放在同一目录中,便于调试。全部勾选完成后,单击创建。注意,此时电脑可能会短暂卡死,正常现象稍等几秒就好。

4 添加c文件

上一步创建完成后,会得到如下界面,接下来添加源文件

在左侧的解决方案目录下,选中源文件,右键单击,选择添加->新建项,如下图所示

注意,如果左侧没有解决资源管理器,或者不小心关掉了,如下图

单击视图->项目资源管理器就可以调出来

添加新建项的默认页面如下,这里有几个地方值得注意:1 选择C++文件(不管是写c还是c++);2 底下名称的后缀是.cpp,我们写c代码时需要修改为.c;3 这里只管添加.c文件,如果要添加.h文件,在后面介绍。

选中C++文件,名称修改为hello.c,点击添加

5 在hello.c中进行测试

按Ctrl+F5直接编译运行,结果如下,打印正确。

6 正常新建工程到这里已经ok了,在一些项目中,可能需要移植别人的代码,通常是每个.c文件对应一个.h文件,添加过程如下

首先是添加头文件.h,过程:选中头文件->右键单击->添加->现有项

这里我事先创建了max.h和max.c两个文件,用于求两数的最大值,添加如下

一样的,选中源文件,右键单击->添加->现有项,选择max.c

7 在主函数中调用添加文件,并进行测试

测试代码:

#include <stdio.h>
void author_log(void);
int main(void)
{
	int max_value;	
 
	max_value = max(555, 666);
	printf("%d\n", max_value);
	author_log();
 
	getchar();
	return 0;
}
 
/* 打印博主log信息 */
void author_log(void)
{
	printf("author name: dingyc \n");
	printf("author email: dingyc_ee@yeah.net \n");
}

测试结果:

用于测试的max.c和max.h文件

max.c

/* 求两整数最大值 */
 
int max(int num1, int num2)
{
	int max_value;
 
	if (num1 > num2)
	{
		max_value = num1;
	}
	else
	{
		max_value = num2;
	}
 
	return max_value;
}

max.h

#ifndef __MAX_H
#define __MAX_H 
int max(int num1, int num2); 
#endif /* __MAX_H */

问题:

看到有不少同学问到,visual studio 提示找不到 #cinlude <stdio.h> 头文件路径,其实是没有安装C++工具。如下所示,勾选

“使用C++的桌面开发”,就能正常运行了。

到此这篇关于Visual Studio 2019安装使用C语言程序(VS2019 C语言)的文章就介绍到这了,更多相关VS2019安装使用C语言内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

更多精彩内容其他人还在看

用标准c++实现string与各种类型之间的转换

这个类在头文件中定义, < sstream>库定义了三种类:istringstream、ostringstream和stringstream,分别用来进行流的输入、输出和输入输出操作。另外,每个类都有一个对应的宽字符集版本
收藏 0 赞 0 分享

C++如何通过ostringstream实现任意类型转string

再使用整型转string的时候感觉有点棘手,因为itoa不是标准C里面的,而且即便是有itoa,其他类型转string不是很方便。后来去网上找了一下,发现有一个好方法
收藏 0 赞 0 分享

C/C++指针小结

要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区
收藏 0 赞 0 分享

C++ 类的静态成员深入解析

在C++中类的静态成员变量和静态成员函数是个容易出错的地方,本文先通过几个例子来总结静态成员变量和成员函数使用规则,再给出一个实例来加深印象
收藏 0 赞 0 分享

C++类的静态成员初始化详细讲解

通常静态数据成员在类声明中声明,在包含类方法的文件中初始化.初始化时使用作用域操作符来指出静态成员所属的类.但如果静态成员是整型或是枚举型const,则可以在类声明中初始化
收藏 0 赞 0 分享

C++类静态成员与类静态成员函数详解

静态成员不可在类体内进行赋值,因为它是被所有该类的对象所共享的。你在一个对象里给它赋值,其他对象里的该成员也会发生变化。为了避免混乱,所以不可在类体内进行赋值
收藏 0 赞 0 分享

C++中的friend友元函数详细解析

友元可以是一个函数,该函数被称为友元函数;友元也可以是一个类,该类被称为友元类。友元函数的特点是能够访问类中的私有成员的非成员函数。友元函数从语法上看,它与普通函数一样,即在定义上和调用上与普通函数一样
收藏 0 赞 0 分享

static全局变量与普通的全局变量的区别详细解析

以下是对static全局变量与普通的全局变量的区别进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助
收藏 0 赞 0 分享

C++ explicit关键字的应用方法详细讲解

C++ explicit关键字用来修饰类的构造函数,表明该构造函数是显式的,既然有"显式"那么必然就有"隐式",那么什么是显示而什么又是隐式的呢?下面就让我们一起来看看这方面的知识吧
收藏 0 赞 0 分享

教你5分钟轻松搞定内存字节对齐

随便google一下,人家就可以跟你解释的,一大堆的道理,我们没怎么多时间,讨论为何要对齐.直入主题,怎么判断内存对齐规则,sizeof的结果怎么来的,请牢记以下3条原则
收藏 0 赞 0 分享
查看更多