要实现此功能需要用EasyX

一、下载VS编译环境和EasyX。

①Vs2019https://iwx.mail.qq.com/ftn/download?func=3&key=9e9b6c33e513484cace8193335323333017f223337323333444b0f560001035152001a05070b521e555206511a5350070049560152510551565d01505405393337370503060b1d56190123174920d47f9e63d1c0bd45f9051974cfbbb19578&code=ad737233&k=9e9b6c33e513484cace8193335323333017f223337323333444b0f560001035152001a05070b521e555206511a5350070049560152510551565d01505405393337370503060b1d56190123174920d47f9e63d1c0bd45f9051974cfbbb19578

Vs2019对应下载EasyXhttps://iwx.mail.qq.com/ftn/download?func=3&key=9cce4637e213181aaebd1a37323263652c7e313730326365461e0506560757045004195655505148570807021d0b0604561c57020307560001520404030b42652650474e68dbe3e784a59cd38abc15165101050ed7bbeb83ff9d1c06191c061d062507eeb304ca181b7a11f670811d47da3198264a8e&code=c14702ce&k=9cce4637e213181aaebd1a37323263652c7e313730326365461e0506560757045004195655505148570807021d0b0604561c57020307560001520404030b42652650474e68dbe3e784a59cd38abc15165101050ed7bbeb83ff9d1c06191c061d062507eeb304ca181b7a11f670811d47da3198264a8e

②Vc2010由于是离线包上传不了,需要的关注并@我,免费发.

vc2010对应下载的EasyXhttps://iwx.mail.qq.com/ftn/download?func=3&key=c69d4261e7401919f4ee1961376162667caf3e61356162661c4d5504535404025f561a550207534b0d00010218005650084f54590d0707540d070700040746667c0344186d88e2e4def69f858fef14150b520658d1dac78281e9d0e8bd87feca17074f0421db87d5786918c3aa53f2ae877a17e2ea1d14d868&code=9b7a5abf&k=c69d4261e7401919f4ee1961376162667caf3e61356162661c4d5504535404025f561a550207534b0d00010218005650084f54590d0707540d070700040746667c0344186d88e2e4def69f858fef14150b520658d1dac78281e9d0e8bd87feca17074f0421db87d5786918c3aa53f2ae877a17e2ea1d14d868

二、vc2010以及vs2019详细安装与使用教程在我主页有。

三、EasyX安装教程。(以Vc2010对应的为例,Vs2019对应的安装方法一样)

以下流程都是在vc2010上 的操作。

找到下载好的EasyX并打开

打开后点击下一步

之后它会自动识别你所下载的编译环境,点击安装即可,只要电脑内存大全安装也没有问题。安装之后就行了,编译环境就能用相关函数了

四、源代码简单直接上代码

加载音乐与EasyX无关

加上2#include <MMSystem.h>//播放音乐的头文件

4 #pragma comment(lib,"winmm.lib")//播放音乐用

而1 #include <graphics.h>是引用EasyX的头文件

 1 #include <graphics.h>
2 #include <MMSystem.h>//播放音乐的头文件
3 #include <stdlib.h>
4 #pragma comment(lib,"winmm.lib")//播放音乐用
5 int main(void)
6 {
7
8 initgraph(1029, 989);//创建一个窗口,1029像素宽,989像素高
9
10 loadimage(0, "bg.jpg.jpg");//把图片加载到当前窗口
11 mciSendString("play bg.mp3.mp3 repeat",0,0,0);//加载音乐并播放
12 system("pause");
13 closegraph();//把当前窗口关闭
14 return 0;
15 }

loadimage(0, "bg.jpg.jpg");图片的引用若加载失败主要有两个原因

一是图片引用问题;二是编译环境问题。在这讲图片的引用问题,下面的五讲编译环境的修改。

图片引用问题主要有:图片的名称不对,图片名为“bg.jpg”你会发现你引用时也写“bg.jpg”但运行没反应。解决方案:引用文件命名后多加一个.jpg即为“bg.jpg.jpg”;如果还是不行就可能是图片本身的问题,解决方案:用电脑带的画画的打开方式打开图片然后另存为即可。

调用图片需要把所要调用的图片存在源文件所在的文件夹里(所调用的音乐也要放在源文件所在的文件夹里,音乐为mp3格式)

可以右键源文件->打开所在的文件夹

注意图片格式要为jpg

五、注意运行失败的编译环境问题(个人感觉Vs2019没vc2010的编译环境好用)

 loadimage(0, "bg.jpg.jpg");//把图片加载到当前窗口此语句易出错

排除图片引用问题,若出错就很可能是字符集问题修改了,需要把字符集改为“使用多字符字符集”

六、在vs2019环境运行与vc2010环境运行类似

需要特别注意的就是, #include <graphics.h>语句总是运行不了,报错找不到指定文件(必须要安装对应的EasyX并运行安装vs2019),这时别慌。

右键->项目->属性->c/c++->常规->使用Windows运行扩展 是/ZW(注意是选择的不是自己输的,在点那个选项时,在所点选项的最右边选)

//最后

不期而遇是源,再遇就为文件

谢谢支持,共同进步。不足之处一直有,请不吝赐教。//

用c语言调用Easy X实现图像的输出,附带音乐的读取的更多相关文章

  1. Atitit java c# php c++ js跨语言调用matlab实现边缘检测等功能attilax总结

    Atitit java c# php c++ js跨语言调用matlab实现边缘检测等功能attilax总结 1.1. 边缘检测的基本方法Canny最常用了1 1.2. 编写matlab边缘检测代码, ...

  2. C++ 编写DLL文件给易语言调用

    摸索了两天了,终于解决了所有问题,在此跟大家分享. 需要三个文件,dll_demo.h.dll_demo.cpp.dll_dome.def 直接上代码: 头文件如下: #ifndef _DLL_DEM ...

  3. Golang通过Thrift框架完美实现跨语言调用

    每种语言都有自己最擅长的领域,Golang 最适合的领域就是服务器端程序. 做为服务器端程序,需要考虑性能同时也要考虑与各种语言之间方便的通讯.采用http协议简单,但性能不高.采用TCP通讯,则需要 ...

  4. Golang、Php、Python、Java基于Thrift0.9.1实现跨语言调用

    目录: 一.什么是Thrift? 1) Thrift内部框架一瞥 2) 支持的数据传输格式.数据传输方式和服务模型 3) Thrift IDL 二.Thrift的官方网站在哪里? 三.在哪里下载?需要 ...

  5. windows下C语言调用系统文件选择对话框

    代码片段,在windows下用C语言调用文件选择对话框,以备忘 #define DEFAULT_DIR "" char extraction_path[MAX_PATH] = DE ...

  6. 网页控制脚本修改系统信息 C语言调用uci

    0 交叉编译生成程序 http://tuntuntun.net/%E5%9C%A8OpenWrt%E4%B8%8A%E8%BF%90%E8%A1%8C%E7%AC%AC%E4%B8%80%E4%B8% ...

  7. 跨语言调用Hangfire定时作业服务

    跨语言调用Hangfire定时作业服务 背景 Hangfire允许您以非常简单但可靠的方式执行后台定时任务的工作.内置对任务的可视化操作.非常方便. 但令人遗憾的是普遍都是业务代码和hagnfire服 ...

  8. C++ 跨语言调用 Java

    C++ 跨语言调用 Java Java JDK 提供了 JNI 接口供 C/C++ 程序调用 Java 编译后的类与方法,主要依赖于头文件(jni.h) 和 动态库(jvm.so/jvm.dll),由 ...

  9. 使用c语言调用python小结

    近期在做一个漏洞展示平台,攻击实现部分使用python实现.c语言实现部分使用libcli库做一个类似telnet的东东,回调函数run的时候调用python模块. 针对c调用python,做个了小d ...

随机推荐

  1. SQL数据库之设置查询出来数据为默认值

    -- 如果工资为null,按0处理 -- 函数: ifnull(字段, 默认值) : 如果指定字段的内容是null, 就按默认值处理 select name, ifnull(salary, 0) fr ...

  2. Living Documentation

    Living Documentation Living documentation in legacy systems Living documentation, which comes from t ...

  3. [开源] 分享自己用的 GitHub 分组管理工具.

    CODELF 的 GitHub Star 管理工具, 简洁快速,从开发者角度考虑,用完就走,不给开发者更多的管理负担. http://unbug.github.io/codelf/ 这个工具目前在 G ...

  4. 一个关于小程序与单片机的通信实例(TCP/IP)

    前言 这是一个18年初的创业项目的核心功能要求,我们当时打算做一个共享类的项目,项目的主题是共享图书,线下的形式租借图书,我们当时是考虑做一个借书柜的形式,然后线下生产投放借书柜,这些借书柜本身能存放 ...

  5. pip freeze > requirements.txt` 命令输出文件中出现文件路径而非版本号

    pip freeze > requirements.txt 命令输出文件中出现文件路径而非版本号 解决办法: pip list --format=freeze > requirements ...

  6. 安装PLSQLDeveloper

    1.点击.exe开始安装 2.选择安装路径点击下一步 3.点击finish 4.注册  ,打开新安装的plsql 如下: 点击关闭(现在是登录不上的) 点击help->Register 如下: ...

  7. 使用Object.Defineproperties改变对象数据结构

    此方法设置键的时候如果需要使键为变量则需要加中括号[]  如下 let addKeys = Number(keys[keys.length - 1]) + 1 Object.assign(this.t ...

  8. Ubuntu安装docker-compose(摘自官网,自用)

    安装 Docker Compose 预计阅读时间:8分钟 加速 Docker 桌面中的新功能 Docker Desktop 可帮助您在 Mac 和 Windows 上轻松构建.共享和运行容器,就像在 ...

  9. Spring MVC 工作原理和流程、注解

    Spring MVC 是实现MVC设计模式的企业级开发框架,是Spring框架的一个子模块,无需整合,开发起来更加便捷. MVC设计模式 MVC是一种设计模式,它将应用程序分为 Controller. ...

  10. Unity通过脚本创建Mesh(网格)

    ##1.创建一个带Mesh的物体 Unity中的网格作为组件不能脱离物体单独存在 新建脚本CreateMesh public class CreateMesh: MonoBehaviour { voi ...