如何使用Java来编译运行C文件(一)
来源:互联网 发布:淘宝怎么联系客服啊 编辑:程序博客网 时间:2024/06/11 00:31
如何使用Java来编译运行C文件(一)
前言
码农的小日子过得好好的,指导老师一个兴起要求搞一个自己的在线编译网站,我们这种做小弟的只能老老实实地去搞。还好刚刚结束了考试与比赛,因为各种原因导致原定于寒假开工的项目延迟到下学期了,刚好趁这段空闲的时间来搞一搞。其实,自己感觉搞这个的话也挺好玩的~
前期技术准备部分
1. 调用cmd编译C文件
先说明一下,我的操作系统是Win10,Linux环境下会有所不同;而编译环境是GCC。
- 打开命令行界面并确认GCC可用
键盘win + r ( 这里的r是run的意思)输入cmd,回车,你就看到了命令行输入gcc -v --如果返回了结果,那么继续,如果不识别,那么请立刻参考“附录”
如:
- 写好C语言源文件
创建test.c文件,输入以下代码:
#include<stdio.h>int main(){ printf("hello world\n"); getchar(); rerturn 0;}
将.c文件放于E盘中,方便操作。
- 编译该.c文件
E: cdgcc test.c -o test
这里的cd
是change directory
的意思
接下来,在E盘中就能找到test.exe
文件,双击运行即可。
备注:也可通过命令行来运行该文件!
- 附录
当你输入gcc
时,之所以你看到了:
不是内部或外部命令,也不是可运行的程序或批处理文件。
因为你没有在自己的环境变量之中添加gcc.exe
的路径。于是系统完全不知道去哪里寻找gcc.exe
。
关于GCC的安装配置我就不废话了,直接借用CSDN上firefoxbug
大神的博文,附上链接
Windows下安装配置GCC编译器
2. Java运行命令行
java的Runtime.getRuntime().exec(string)
可以调用执行cmd
指令。
cmd /c dir 是执行完dir命令后关闭命令窗口。cmd /k dir 是执行完dir命令后不关闭命令窗口。cmd /c start dir 会打开一个新窗口后执行dir指令,原窗口会关闭。cmd /k start dir 会打开一个新窗口后执行dir指令,原窗口不会关闭。可以用cmd /?查看帮助信息。
附上一个简单的调用demo
public static void main(String[] args) { String string = "要执行的cmd语句"; Runtime run = Runtime.getRuntime(); try { Process process = run.exec("cmd.exe /k start " + string); /* 对进程 process 进行操作 */ process.destroy(); } catch (IOException e) { e.printStackTrace(); } }
关于多条cmd语句的执行问题
在许多情况下,只调用一条cmd语句明显不能满足我们的需求,需要多条cmd语句来共同配合使用。
关于网上使用&&
来连接多条cmd语句的调用使用,本人亲测不成功,也有可能是我的操作有错(可与网上案例一模一样的代码运行不成功我也没办法啊,也考虑过是Windows操作系统的影响)。
最后,我是使用了bat
批处理文件来解决这个问题的,具体案例请参考我的开发案例。
常见的CMD命令
注意:以下命令均由互联网收集而来!!!
1. gpedit.msc—–组策略
2. sndrec32——-录音机
3. Nslookup——-IP地址侦测器
4. explorer——-打开资源管理器
5. logoff———注销命令
6. tsshutdn——-60秒倒计时关机命令
7. lusrmgr.msc—-本机用户和组
8. services.msc—本地服务设置
9. oobe/msoobe /a—-检查XP是否激活
10. notepad——–打开记事本
11. cleanmgr——-垃圾整理
12. net start messenger—-开始信使服务
13. compmgmt.msc—计算机管理
14. net stop messenger—–停止信使服务
15. conf———–启动netmeeting
16. dvdplay——–DVD播放器
17. charmap——–启动字符映射表
18. diskmgmt.msc—磁盘管理实用程序
19. calc———–启动计算器
20. dfrg.msc——-磁盘碎片整理程序
21. chkdsk.exe—–Chkdsk磁盘检查
22. devmgmt.msc— 设备管理器
23. regsvr32 /u *.dll—-停止dll文件运行
24. drwtsn32—— 系统医生
25. rononce -p —-15秒关机
26. dxdiag———检查DirectX信息
27. regedt32——-注册表编辑器
28. Msconfig.exe—系统配置实用程序
29. rsop.msc——-组策略结果集
30. mem.exe——–显示内存使用情况
31. regedit.exe—-注册表
32. winchat——–XP自带局域网聊天
33. progman——–程序管理器
34. winmsd———系统信息
35. perfmon.msc—-计算机性能监测程序
36. winver———检查Windows版本
37. sfc /scannow—–扫描错误并复原
38. taskmgr—–任务管理器(2000/xp/2003
39. winver———检查Windows版本
40. wmimgmt.msc—-打开windows管理体系结构(WMI)
41. wupdmgr——–windows更新程序
42. wscript——–windows脚本宿主设置
43. write———-写字板
44. winmsd———系统信息
45. wiaacmgr——-扫描仪和照相机向导
46. winchat——–XP自带局域网聊天
47. mem.exe——–显示内存使用情况
48. Msconfig.exe—系统配置实用程序
49. mplayer2——-简易widnows media player
50. mspaint——–画图板
51. mstsc———-远程桌面连接
52. mplayer2——-媒体播放机
53. magnify——–放大镜实用程序
54. mmc————打开控制台
55. mobsync——–同步命令
56. dxdiag———检查DirectX信息
57. drwtsn32—— 系统医生
58. devmgmt.msc— 设备管理器
59. dfrg.msc——-磁盘碎片整理程序
60. diskmgmt.msc—磁盘管理实用程序
61. dcomcnfg——-打开系统组件服务
62. ddeshare——-打开DDE共享设置
63. dvdplay——–DVD播放器
64. net stop messenger—–停止信使服务
65. net start messenger—-开始信使服务
66. notepad——–打开记事本
67. nslookup——-网络管理的工具向导
68. ntbackup——-系统备份和还原
69. narrator——-屏幕“讲述人”
70. ntmsmgr.msc—-移动存储管理器
71. ntmsoprq.msc—移动存储管理员操作请求
72. netstat -an—-(TC)命令检查接口
73. syncapp——–创建一个公文包
74. sysedit——–系统配置编辑器
75. sigverif——-文件签名验证程序
76. sndrec32——-录音机
77. shrpubw——–创建共享文件夹
78. secpol.msc—–本地安全策略
79. syskey———系统加密,一旦加密就不能解开,保护windows xp系统的双重密码
80. services.msc—本地服务设置
81. Sndvol32——-音量控制程序
82. sfc.exe——–系统文件检查器
83. sfc /scannow—windows文件保护
84. tsshutdn——-60秒倒计时关机命令
3. 84. tsshutdn——-60秒倒计时关机命令
85. tourstart——xp简介(安装完成后出现的漫游xp程序)
86. taskmgr——–任务管理器
87. eventvwr——-事件查看器
88. eudcedit——-造字程序
89. explorer——-打开资源管理器
90. packager——-对象包装程序
91. perfmon.msc—-计算机性能监测程序
92. progman——–程序管理器
93. regedit.exe—-注册表
94. rsop.msc——-组策略结果集
95. regedt32——-注册表编辑器
96. rononce -p —-15秒关机
97. regsvr32 /u *.dll—-停止dll文件运行
98. regsvr32 /u zipfldr.dll——取消ZIP支持
99. cmd.exe——–CMD命令提示符
100. chkdsk.exe—–Chkdsk磁盘检查
101. certmgr.msc—-证书管理实用程序
102. calc———–启动计算器
103. charmap——–启动字符映射表
104. cliconfg——-SQL SERVER 客户端网络实用程序
105. Clipbrd——–剪贴板查看器
106. conf———–启动netmeeting
107. compmgmt.msc—计算机管理
108. cleanmgr——-垃圾整理
109. ciadv.msc——索引服务程序
110. osk————打开屏幕键盘
111. odbcad32——-ODBC数据源管理器
112. oobe/msoobe /a—-检查XP是否激活
113. lusrmgr.msc—-本机用户和组
114. logoff———注销命令
115. iexpress——-木马捆绑工具,系统自带
116. Nslookup——-IP地址侦测器
117. fsmgmt.msc—–共享文件夹管理器
118. utilman——–辅助工具管理器
119. gpedit.msc—–组策略
120. explorer——-打开资源管理器
- 如何使用Java来编译运行C文件(一)
- 如何使用Java来编译运行C文件(二)
- 如何使用cmd来编译和运行java文件
- 使用EduitPlus来设置java编译和运行命令,以及如何用命令来生成java的API注释文档
- python使用JPype来运行java文件
- 如何使用命令行编译运行java程序
- 使用ant编译打包运行java文件
- vim 一键编译运行c++,c,java,python, shell
- 如何使用Gilisoft File Lock来阻止exe文件运行
- 如何编译并运行Package下的java文件
- 如何使用cmd编译java文件
- matlab编译运行c文件
- gcc编译运行c文件
- 【C/C++】程序如何来,编译全过程
- 如何使用VC编译.C文件或者CXX文件?
- 如何使用eclipse新建并编译、运行Java程序
- 如何使用命令行编译和运行Java代码
- 如何利用jdk来把java文件变成.c
- 依旧是回溯法,还有深搜妙用极其深入理解
- 为一个驱动添加Android中间层的步骤
- 树莓派上手
- osgGA的CameraManipulator类
- 数字证书和golang的研究
- 如何使用Java来编译运行C文件(一)
- 写一个图案解锁控件
- B. Reading codeforces-problem-234B
- AnimationPath类
- 一天一个控件——TextInputLayout
- 可变参数
- Docker实践 - 使用maven插件自动部署web应用至Docker容器的tomcat
- WebForms UnobtrusiveValidationMode 需要“jquery”ScriptResourceMapping。
- 将整数分解成若干个质因数.