关于“VS2022无法打开头文件<graphics.h>” 以及编译时 “没有与参数列表匹配的重载函数实例”俩个问题的解决思路

前言: 今天无聊没什么事干,突然看见一条视频梦回20年前杀马特横行的年代,炫酷而又土嗨的灯光闪烁,我又想了想之前写扫雷小游戏的时候,有的人写的游戏界面非常的炫酷,各种颜色都有,抱着没事没事干试一下的态度,我打开了 VS2022 想着试一下怎么做一个炫酷的灯光闪烁的效果,结果刚写完第一行代码就报错了,他提示我无法打开源文件 "graphics.h",但是其他的源文件比如stdio.h , string.h都可以。


目录

一.无法打开头文件

错误情况

解决方法

二.编译时没有与参数列表匹配的重载函数实例

错误情况

错误原因

解决方法

完整代码

运行效果


一.无法打开头文件 <graphics.h>

错误情况

首先先打开自己电脑上的VS编译器的目录,如果你和下图和笔者情况一样的话,那就好解决了,这里缺失了俩个文件缺失easyx.hgraphics.h 这两个源文件

解决方法

我们打开下面的这个网站,根据自己的版本进行下载就行了

EasyX 2023大暑版 (2023-7-23 更新) - EasyX

下载完成后,根据指引下载,然后我们打开刚才的 include 文件夹查看

我们就发现缺失的俩个文件都下载好了,这个时候再打开 VS编译器 就不会报错了

二.编译时提示没有与参数列表匹配的重载函数实例

错误情况

大概就是下面这个情况

错误原因

这里的错误原因是因为字符串的实际存储有多种编码格式,如果默认的编码格式和实际执行的平台不相符就会发生错误

解决方法

以 VS2022 为例,点击项目>高级>字符集,然后更改为使用多字节字符集

然后代码就可以无障碍运行了


完整代码

cpp 复制代码
#include<graphics.h>
#include<stdio.h>
#include<time.h>

int main()
{
	initgraph(640, 480);
	char str[] = { "I can do this all day" };
	srand((unsigned int)time(NULL));
	int x = 10;
	while (1)
	{
		settextcolor(RGB(rand() % 256, rand() % 256, rand() % 256));
		settextstyle(x, 0, "楷体");
		outtextxy(10, 10, str);
		Sleep(200);
		x++;
	}

	system("pause");
	closegraph();

	return 0;
}

运行效果

整个句子越来越大,越来越大,并且不断的变换颜色,非常的炫酷,有兴趣的小伙伴们可以去试一试

以上就是本次分享的全部内容了,如有错误,欢迎积极指出

相关推荐
叶~小兮3 分钟前
Jenkins构建生产CICD环境学习笔记
笔记·学习·jenkins
玉树临风ives3 分钟前
atcoder ABC 458 题解
数据结构·c++·算法
暴躁小师兄数据学院3 分钟前
【AI大模型应用开发工程师特训笔记】第04讲(第4章):运算符
人工智能·笔记·机器学习
chengO_o7 分钟前
STL关联式容器:map 与 set 的使用
c++·stl·set·map·平衡二叉搜索树
zycoder.8 分钟前
rabbitmq学习demo,包含普通消息,TTL+死信队列,topic交换机三种情况,以项目形式讲解
分布式·学习·rabbitmq
问心无愧051314 分钟前
ctf show web 入门258
android·前端·笔记
星夜夏空9925 分钟前
STM32单片机学习(34) —— ADC实验: ADC规则组配合DMA实现自动化转运
stm32·单片机·学习
Realdagongzai30 分钟前
Linux 6.19.10 内核调度器算法详解
linux·学习·算法·spring·kernel
charlie11451419131 分钟前
现代C++特性指南(5)——RAII 深入理解:资源管理的基石
开发语言·c++·现代c++
xxl大卡35 分钟前
Redis完整详细学习笔记
redis·笔记·学习