关于“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;
}

运行效果

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

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

相关推荐
xvhao201311 分钟前
P4084 [USACO17DEC] Barn Painting G 题解
数据结构·c++·算法·深度优先·动态规划
云栖梦泽14 分钟前
Linux内核与驱动:5.并发与竞争
linux·c++
禹中一只鱼24 分钟前
【力扣热题100学习笔记】 - 双指针
java·笔记·学习·leetcode·贪心算法
不想看见40430 分钟前
在AI时代下,刷LeetCode题的价值与意义
开发语言·c++·qt
haiyangyiba37 分钟前
学习Spring Ai的摸索实践
学习·spring ai
chase。39 分钟前
【学习笔记】cuRoboV2——为高自由度机器人打造的动力学感知运动生成框架
笔记·学习·机器人
南境十里·墨染春水41 分钟前
C++ 笔记 多重继承 菱形继承(面向对象)
开发语言·c++·笔记
cpp_250143 分钟前
P1569 [USACO ?] Generic Cow Protests【来源请求】
数据结构·c++·算法·题解·洛谷·线性dp
Albert Edison44 分钟前
【ProtoBuf 语法详解】选项 option
开发语言·c++·序列化·反序列化·protobuf
繁星星繁44 分钟前
Docker(一)
java·c语言·数据结构·c++·docker·容器·eureka