| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1007 人关注过本帖
标题:[求助]请教一个命令行的问题!
只看楼主 加入收藏
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
 问题点数:0 回复次数:13 
[求助]请教一个命令行的问题!

请教一下如何来使用命令行呢?

注1:以上对gcc的描述是真实的。你可以在命令行试验一下。在“开始”菜单中运行“命令提示符”,黑窗口中输入“set path=%PATH%;C:\MinGW\bin”,然后便可以使用gcc命令。红字部分请根据机器编译器的安装目录适当调整。
注2:本次作业试行“人性化自动评判”,根据输出错误的行数自动给分。教师手工评判只处理风格分和不用函数、使用goto、使用全局变量的扣分。
注3:这里介绍的库函数可以给你带来很多帮助。

带颜色字体的部分是什么意思啊?谢谢了!

搜索更多相关主题的帖子: 命令 
2006-11-28 12:40
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 

顺便看看作业吧!看着挺晕的!
命令行参数分析

我们在实验中使用的 Code::Blocks 只是一种集成开发环境(IDE), 它本身要依赖 gcc 编译器才能对编写的 C 语言程序进行 预处理 (preprocess)、编译 (compile) 和 链接 (link). 还要依赖 gdb 调试器才能对编译好的可执行程序进行调试 (debug).

事实上, 在程序写好之后, 我们完全可以脱离 Code::Blocks 的束缚, 直接同 gcc 打交道来让程序工作. 例如, 有如下 C 程序 (hello.c):

#include <stdio.h>int main(void){ printf("Hello World!\n"); return 0;}则可以用下面的命令来从 hello.c 源文件得到 hello.exe 可执行程序. 这一过程中 gcc 同时起到预处理器、编译器和链接器的功能.

$ gcc -o hello.exe hello.c我们也可以仅对一个源程序做预处理 (对 hello.c 做预处理, 结果存为 expanded.c) 此时 gcc 只起预处理器的作用:

$ gcc -E -o expanded.c hello.c或者仅对一个源程序做编译 (对 hello.c 做预处理和编译, 生成目标文件 hello.o) , 此时 gcc 起预处理器和编译器的作用:

$ gcc -c -o hello.o hello.c从 .c 文件生成可执行程序时, gcc 还允许我们不指定输出文件的名字, 例如:

$ gcc hello.c 这条命令相当于 gcc -o a.exe hello.c

最后 gcc 还提供了一个帮助功能, 显示所有支持的参数

$ gcc --help在这次上机作业中, 我们编写程序来分析拟传递给 gcc 的命令行参数, 判定其将会执行的功能.

输入
一般地, 一个 (在本问题的上下文中经过充分简化后的) 完整的 gcc 命令行, 可能呈现为以下两种形式:

gcc [options] <input_file> gcc --help第一种形式中, options 的内容可以是下表中的任意一个和若干个的组合(保证同一种 option 不会重复出现):

命令行参数的形式 含义
-std=<standard> 执行的 C 语言规范 (<standard> 可能是 c89 或者 c99), 本参数可以省略, 默认为 c89
-E 仅执行预处理
-c 仅执行预处理和编译
-o <output_file> 指定输出文件名, 如果当前任务是生成可执行程序, 则本参数可以省略(此时 <output_file> 默认为 'a.exe' 其它情况下没有默认输出文件名)


命令中所有涉及到的文件名都保证仅含小写字母、数字、下划线 ('_') 和英文句号 ('.'), 文件名长度不超过 100 字符.

gcc 命令的不同 options 之间, 以及 -o 参数的 -o 和文件名之间, 都保证有至少一个空格. -std= 参数和C语言标准之间没有空格

输入数据中的每个 gcc 命令都保证合法, 其长度不超过 1000 字符. EOF标志输入结束.


输出
对于输入的每个 gcc 命令行, 输出对其功能的判定. 后跟一换行符 (参见输出样例). 每行的长度不会超过1000字符.


输入样例
gcc hello.cgcc -c -o hello.o hello.cgcc -std=c99 -o foobar.c -E hello.cgcc --help输出样例
I am a c89 preprocessor + compiler + linker. I start from "hello.c" and end with "a.exe".I am a c89 preprocessor + compiler. I start from "hello.c" and end with "hello.o".I am a c99 preprocessor. I start from "hello.c" and end with "foobar.c".I am showing help.


该学习了。。。
2006-11-28 12:50
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 

点击.
开始--->运行--->输入命令


倚天照海花无数,流水高山心自知。
2006-11-28 13:04
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
头疼啊!大家帮着看看吧!要如何下手呢?

该学习了。。。
2006-11-28 20:33
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
都输入那写命令啊!我知道有个cmd 还有个dir 要怎样才能运行程序啊?

该学习了。。。
2006-11-29 19:43
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
在预编译那里要如何处理呢?

该学习了。。。
2006-11-29 19:52
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
是在上面题当中的预编译要如何处理呢?

该学习了。。。
2006-11-29 20:02
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
输入样例
gcc hello.c
gcc -c -o hello.o hello.c
gcc -std=c99 -o foobar.c -E hello.c
gcc --help
输出样例
I am a c89 preprocessor + compiler + linker. I start from "hello.c" and end with "a.exe".
I am a c89 preprocessor + compiler. I start from "hello.c" and end with "hello.o".
I am a c99 preprocessor. I start from "hello.c" and end with "foobar.c".
I am showing help.

该学习了。。。
2006-11-29 20:07
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
收藏
得分:0 

用4个strcmp()解决问题


2006-11-29 20:37
zhanghuan_10
Rank: 1
等 级:新手上路
威 望:2
帖 子:751
专家分:0
注 册:2006-10-25
收藏
得分:0 
这道题我不是很理解,请具体的说一说!谢谢了!

该学习了。。。
2006-11-30 17:57
快速回复:[求助]请教一个命令行的问题!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035838 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved