当前位置:首页 » 编程软件 » dos编译器不稳定

dos编译器不稳定

发布时间: 2023-03-08 01:43:00

Ⅰ 在dos下运行g++ -O3 -c *.cpp时出错,错误如下,请问如何更改

在dos下需要编译器的,系统是没有的,找个装下吧

c语言和DOS有关系吗

c语言与DOS系统是完全没有关系的。因为c语言是高级编程语言,而DOS是操作系统,2者是不同领域的东西。
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。

DOS是英文Disk Operating System的缩写,意思是“磁盘操作系统”,顾名思义,DOS主要是一种面向磁盘的系统软件,说得简单些,DOS就是人给机器下达命令的集合,是存储在机器硬件里头的一些命令集,有了DOS,我们就可以更容易理解怎么给机器下命令,不必去深入了解机器的硬件结构,也不必去死记硬背那些枯燥2进制数字的机器命令,只需通过一些接近于英语的DOS命令,我们就可以轻松地完成绝大多数的日常操作。另外,DOS还能有效地管理在它控制下的各种软硬件资源,对它们进行合理的调度,所有的软件和硬件都在DOS的监控和管理之下,有条不紊地进行着运转。

Ⅲ masm编译器用下载吗我的电脑在DOS中怎么不能用啊

masm是微软出的汇编编译器,支持8088/8086架构的汇编语言,在DOS下运行,需要下载。masm包括:
(1)编辑程序edit.exe
(2)汇编程序masm.exe
(3)连接程序link.exe
(3)调试程序debug.exe
基本使用方法如下,仅供参考:
用之前最好把上面的几个文件保存到盘符下的文件夹里,文件夹名字尽量简单明了,一切为了操作简单。
(1)最好不要用edit.exe,而用记事本编辑汇编程序,这样操作比较方便。保存时,文件类型选为所有文件,再在文件名后面加上.asm,保存即可。
(2)打开命令提示行(运行-->输入cmd-->确定),敲命令进入masm所在文件夹,输入masm *.asm(*表示文件名)回车。
这时会提示
Object filename [*.OBJ]:
表示要生成的目标文件名称,必须填,然后回车。提示
Source listing [NUL.LST]:
表示是否要生成列表文件,填写这生成.lst文件,不填则放弃生成.lst文件。.lst文件用记事本打开能看到源代码的语法错误,查错想当方便,****强烈建议生成****。回车后提示
Cross-reference [NUL.CRF]:
表示生成交叉引用文件.crf,如果有多个.obj文件参与连接就要生成,回车后显示错误数量等信息,编译完成。
(3)输入link *(.obj文件名)
一路回车,返回时已经生成了*.exe。
(4)debug使用比较复杂,不多介绍。

Ⅳ 请问在DOS环境下编译程序时,即执行debug命令的程序编译时,输入错误了,应该如何撤销不再提示error

DEBUG是常用的汇编语言级调试工具,为汇编语言程序员提供了分析指令、跟踪程序的有效手段

如何进入Debug程序?
答:在命令提示符下输入“debug”回车即可

懂得汇编的朋友,相信看懂下面命令是没多大问题的。

常用命令:
-A 汇编 格式:A 起始地址
例如:输入“A”,回车,然后输入“MOV AX,10”回车。再按一次回车,则退出汇编状态。

-U 反汇编 格式:U 起始地址 结束地址
例如:接上面,输入“U”,回车,即可看到结果。

以下不再举例,类似上面,有待自己研究,这样记得更牢。谢谢!

-T 单步执行 格式:T 起始地址 运行指令数
-G 断点执行 格式:G 起始地址 断点地址 结束地址
-D 数据显示 格式: D 起始地址 结束地址
-R 显示修改寄存器
格式:R 寄存器名
-P 单步执行,不进入中断
格式:T 起始地址 运行指令数
-F 连续填入内存内容
格式:起始地址 结束地址 要填入的数值系列
-E 单个修改内存内容
格式: E 地址 填入内容
-Q 退出debug状态
格式: Q 回车

不常用命令:
-M 内存搬家指令:
格式:M 起始地址 结束地址 目的地址
-H 16进制加法:
格式:H 操作数1 操作数2
结果显示:加法结果 减法结果

Ⅳ 如何在DOS下编译C/C++程序

1, 找到VS的cl.exe所在目录,把这目录复制下来:
我的VS2008的CL.EXE目录是在E:\Program Files\Microsoft Visual Studio 9.0\VC\bin,
VS2010可以类似的找到..

在'我的电脑'上点右键,
选右键菜单'属性'->'高级'->'环境变量',
在弹出的环境变量设置框里找"PATH"这个变量, (在用户变量或系统变量里都可以)
然后在"PATH"的值后面,用分号分隔,
把将才找到的路径串复制进去,选确定.

2, 重新运行CMD开启新的命令窗.

3, 输入cl回车检查PATH路径是否生效.

//以上步聚是设置环境变量,只需设一次以后就好用了.以后每次要命令行下编译C++程序,就从下面第4步开始.

4, 输入vcvars32 ,运行cl.exe同一路径下的vcvars32.bat,设置其它环境变量.

5, 写一个helloworld程序,保存成hello.cpp, cl hello.cpp回车试试编译正常不. 如果成功,则生成hello.exe文件.

//-----------------------------------------------------------

C/C++ 编译器选项

-优化-

/O1 最小化空间 /Op[-] 改善浮点数一致性
/O2 最大化速度 /Os 优选代码空间
/Oa 假设没有别名 /Ot 优选代码速度
/Ob<n> 内联展开(默认 n=0) /Ow 假设交叉函数别名
/Od 禁用优化(默认值) /Ox 最大化选项。(/Ogityb2 /Gs)
/Og 启用全局优化 /Oy[-] 启用框架指针省略
/Oi 启用内部函数

-代码生成-

/G3 为 80386 进行优化 /Gh 启用 _penter 函数调用
/G4 为 80486 进行优化 /GH 启用 _pexit 函数调用
/G5 为 Pentium 进行优化 /GR[-] 启用 C++ RTTI
/G6 对 PPro、P-II、P-III 进行优化 /GX[-] 启用 C++ EH (与 /EHsc 相同)
/G7 对 Pentium 4 或 Athlon 进行优化 /EHs 启用 C++ EH (没有 SEH 异常)
/GB 为混合模型进行优化(默认) /EHa 启用 C++ EH(w/ SEH 异常)
/Gd __cdecl 调用约定 /EHc extern "C" 默认为 nothrow
/Gr __fastcall 调用约定 /GT 生成纤维安全 TLS 访问
/Gz __stdcall 调用约定 /Gm[-] 启用最小重新生成
/GA 为 Windows 应用程序进行优化 /GL[-] 启用链接时代码生成
/Gf 启用字符串池 /QIfdiv[-] 启用 Pentium FDIV 修复
/GF 启用只读字符串池 /QI0f[-] 启用 Pentium 0x0f 修复
/Gy 分隔链接器函数 /QIfist[-] 使用 FIST 而不是 ftol()
/GZ 启用堆栈检查(/RTCs) /RTC1 启用快速检查(/RTCsu)
/Ge 对所有函数强制堆栈检查 /RTCc 转换为较小的类型检查
/Gs[num] 控制堆栈检查调用 /RTCs 堆栈帧运行时检查
/GS 启用安全检查 /RTCu 未初始化的本地用法检查
/clr[:noAssembly] 为公共语言运行库编译
noAssembly - 不产生程序集
/arch:<SSE|SSE2> CPU 结构的最低要求,以下内容之一:
SSE - 启用支持 SSE 的 CPU 可用的指令
SSE2 - 启用支持 SSE2 的 CPU 可用的指令

-输出文件-

/Fa[file] 命名程序集列表文件 /Fo<file> 命名对象文件
/FA[sc] 配置程序集列表 /Fp<file> 命名预编译头文件
/Fd[file] 命名 .PDB 文件 /Fr[file] 命名源浏览器文件
/Fe<file> 命名可执行文件 /FR[file] 命名扩展 .SBR 文件
/Fm[file] 命名映射文件

-预处理器-

/AI<dir> 添加到程序集搜索路径 /Fx 将插入的代码合并到文件
/FU<file> 强制使用程序集/模块 /FI<file> 命名强制包含文件
/C 不抽出注释 /U<name> 移除预定义宏
/D<name>{=|#}<text> 定义宏 /u 移除所有预定义宏
/E 预处理到 stdout /I<dir> 添加到包含搜索路径
/EP 预处理到 stdout,没有 #line /X 忽略“标准位置”
/P 预处理到文件

-语言-

/Zi 启用调试信息 /Ze 启用扩展(默认)
/ZI 启用“编辑并继续”调试信息 /Zl 省略 .OBJ 中的默认库名
/Z7 启用旧式调试信息 /Zg 生成函数原型
/Zd 仅有行号调试信息 /Zs 只进行语法检查
/Zp[n] 在 n 字节边界上包装结构 /vd{0|1} 禁用/启用 vtordisp
/Za 禁用扩展(暗指 /Op) /vm<x> 指向成员的指针类型
/Zc:arg1[,arg2] C++ 语言一致性,这里的参数可以是:
forScope - 对范围规则强制使用标准 C++
wchar_t - wchar_t 是本机类型,不是 typedef

- 杂项 -

@<file> 选项响应文件 /wo<n> 发出一次警告 n
/?, /help 打印此帮助消息 /w<l><n> 为 n 设置警告等级 1-4
/c 只编译,不链接 /W<n> 设置警告等级(默认 n=1)
/H<num> 最大外部名称长度 /Wall 启用所有警告
/J 默认 char 类型是 unsigned /Wp64 启用 64 位端口定位警告
/nologo 取消显示版权消息 /WX 将警告视为错误
/showIncludes 显示包含文件名 /WL 启用单行诊断
/Tc<source file> 将文件编译为 .c /Yc[file] 创建 .PCH 文件
/Tp<source file> 将文件编译为 .cpp /Yd 将调试信息放在每个 .OBJ 中
/TC 将所有文件编译为 .c /Yl[sym] 为调试库插入 .PCH 引用
/TP 将所有文件编译为 .cpp /Yu[file] 使用 .PCH 文件
/V<string> 设置版本字符串 /YX[file] 自动 .PCH
/w 禁用所有警告 /Y- 禁用所有 PCH 选项
/wd<n> 禁用警告 n /Zm<n> 最大内存分配(默认为 %)
/we<n> 将警告 n 视为错误

-链接-

/MD 与 MSVCRT.LIB 链接 /MDd 与 MSVCRTD.LIB 调试库链接
/ML 与 LIBC.LIB 链接 /MLd 与 LIBCD.LIB 调试库链接
/MT 与 LIBCMT.LIB 链接 /MTd 与 LIBCMTD.LIB 调试库链接
/LD 创建 .DLL /F<num> 设置堆栈大小
/LDd 创建 .DLL 调试库 /link [链接器选项和库]

Ⅵ 使用DOS命令编译Java程序出现编译错误

环境变量没有配置,具体配置如下:
桌面->我的电脑右键,属性->高级,里面有个环境变量,系统变量里面新建1、变量名:JAVA_HOME,值:JDK安装目录(如:C:\Java\jdk1.5.0_09),确定,然后再新建,2、变量名:CLASSPATH,值:“.;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\lib\dt.jar”,直接拷贝引号里面的就行了,确定 3、找到path项,修改,在最前面加上“.;%JAVA_HOME%\bin;”原来内容不要动,确定就OK了

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:741
制作脚本网站 发布:2025-10-20 08:17:34 浏览:1005
python中的init方法 发布:2025-10-20 08:17:33 浏览:712
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:874
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:773
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1120
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:346
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:224
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:910
python股票数据获取 发布:2025-10-20 07:39:44 浏览:869