标题:学习C语言主流编译器的使用方法
取消只看楼主
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
结帖率:100%
 问题点数:0 回复次数:7 
学习C语言主流编译器的使用方法

现在学习C语言的编译器有很多

但是主要的编译器有如下几种:(点击下载)

1: [url=http://www.bc-cn.net/Soft/kfyy/c/200409/1.html]Turbo C2.0[/url] ([url=http://www.skycn.com/soft/2151.html]Turbo C2.0汉化版[/url])

2: [url=http://www.skycn.com/soft/18925.html]Turbo C3.0[/url] ([url=http://www.skycn.com/soft/23360.html]Turbo C3.0汉化版[/url])

3: [url=http://www.bc-cn.net/Soft/kfyy/c/200409/2.html]Win-TC[/url]

4: [url=http://www.bc-cn.net/Soft/kfyy/c/200409/3.html]C-free[/url] ([url=http://bbs.bc-cn.net/viewFile.asp?BoardID=5&ID=5345]C-free注册机[/url])

5: [url=http://www.yangdui.net/soft/JAVAbiancheng_44/Microsoft_Visual_C__3087_detail.htm]VC6.0[/url]

6: [url=http://www.yangdui.net/soft/JAVAbiancheng_44/Visual_Studionet_2005__3545_detail.htm]VC.net[/url]

7: [url=http://stdcpp.cn/html/8/17/0511/93.htm]gcc(dev C++)[/url](密码为:cpp.ga-la.com)

8: [url=http://www.yangdui.net/soft/JAVAbiancheng_44/Borland_C_Builder_3679_detail.htm]C++ builder[/url]

下边是个人认为的难易度:



由于我不提倡各位用Turo C 2.0\3.0编译,这里我就不提了(如果有兴趣的朋友可以找 谭浩强《C程序设计》看看)

目录:

2楼为:Win-tc

3楼为:C-free

4楼为:VC6.0

5楼为:gcc

6楼为:避免gcc生成程序一闪而过的方法(感谢 Antigloss 和 蚂蚁C\C++)

如有错误,或者不详细的地方请指出,谢谢

[此贴子已经被作者于2007-3-17 19:32:30编辑过]

搜索更多相关主题的帖子: C语言 主流 编译 学习 下载 
2007-03-17 07:00
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
打开win tc

看到如下界面



输入一段代码(代码可见,图片)



按下 ctrl+s 保存文件

出现如下界面
注意:win tc保存文件的文件名必须是英文,图片中我是因为让大家看的更明白才用中文,其实是不合法的,后来我改成了 Hello



点击 菜单栏 中的 运行 ,如果你的代码没有错误,会出现如下界面;如果有误,就无法编译(快捷键是什么不我记得了 >.<)



而后按就能运行代码了:



然后,编译的文件,就在你刚才保存的目录下



自我放逐。。。
2007-03-17 07:17
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
C free

打开C free

看到如下界面:



这个时候,你看你要选择多文件程序还是单文件程序

多文件程序是建立在单文件程序的基础上

尤其是当各位学到数据结构的时候,就常常用到多文件程序


下边先讲单文件程序的建立:

点击 文件——》新建 (或者按 ctrl+n 也可以)



输入下边这段代码:



单击 菜单栏 中的 构建——》构建并运行 (或者按 F5 即可)

运行结果如下:



当然,我们还没保存! ctrl+s 选择路径(要养成好习惯,先保存再运行,别的编译器如果不先保存的话是不能运行的)

注意文件名的 后缀



生成的文件同样在你保存的目录下!




多文件的创建:(注意和VC6.0作区别)

第一张图片的那个时段 下,点击 菜单栏 中的 工程——》新建,如图:



出现如下界面:红色部分注意选择



然后 工程——》添加文件



你事先做好的单文件路径



打开后,你会发现你的左边发生变化


[此贴子已经被作者于2007-3-17 7:50:34编辑过]


自我放逐。。。
2007-03-17 07:47
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
VC有中文版和英文版

推荐使用英文版,中文版,有些错误很让你头疼

首先,打开VC6.0,看到下边界面:




同样单文件

菜单栏 file——》new (快捷键 ctrl+N ) ,看到如下界面:(特别注意红色方框部分要看我那样选择!



看到如下界面:



输入代码(代码同上)

然后 菜单栏 build——》build ,(或者直接 F7 )图像如下:



如果你没保存,机子会替你保存,这是保存提示 (保存快捷键 ctrl+s



编译后看到下列图像:注意红色方框,特别是下边的红色方框,以后纠错就看下边的红色方框



查看程序的运行,单击 build——》execute 文件名.exe ( 有 感叹号 的那个,或者直接按 ctrl+F7 快捷键)

所编译的文件,被保存在文件目录下的 Debug




多文件(注意和上边的C free和下边的 gcc做区别

第一张图片态下ctrl+n 看到如下界面,注意和 单文件 区别(我打了 3个红色方框)!如图:



然后出现这个对话框:(注意是 An empty project 空文件工程),觉得刚才有误点 back ,没有错误点 OK



然后如下界面,直接点 OK



然后再在你建立的工程下,建立 单个程序(方法和上边类似,红色窗体部分是自己选好的,如果你想建立 单文件 配合 多文件,而不想打开该工程,请点选红色方框部分,做好选择



而后出现下边这段界面:



剩下部分就和前边的一样了……输入代码 -_-

[此贴子已经被作者于2007-3-17 17:22:25编辑过]


自我放逐。。。
2007-03-17 17:14
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
最标准的C语言编译器 gcc(dev c++)

gcc在linux系统下是自带,在windows下,受到微软的打压,势头比不过VC

所以连安装都要说起

首先,双击 安装文件

出现下边界面(选择English,别的语言你会哭的)



顺序点下(如下图)









这里,我们就要对gcc进行设置了!(请按照图片中的进行设置








单文件

文件——》新建——》源代码ctrl+n

然后,我们要输入代码(注意,代码和别的编译器不一样,后边我会解释),代码如下



点 菜单栏 中 运行——》编译ctrl+F9),等出现的对话框出现 done 的时候 在点击 运行——》运行ctrl+F10

如果,你实在受不了如此频繁去点击,你直接按 F9 (编译并运行) 得了 -_-




gcc的另一种输入源代码方法:

新建一个txt文件,输入代码



文件——》另存为



注意保存类型和文件后缀



生成一个文件,如下,双击打开,编译运行过程同上




多文件(方法同C free类似)

文件——》新建——》工程



注意选择



右键单击 工程



找寻事先做好的文件



[此贴子已经被作者于2007-3-17 18:09:52编辑过]


自我放逐。。。
2007-03-17 17:39
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 

Windows 环境下,直接双击(如果您设置了单击打开,那就是单击)C 或 C++(简称 C/C++)程序,或者直接在某些集成开发环境中(如 Dev-C++)编译运行 C/C++ 程序,会出现程序一闪而过或者程序接收了输入后直接退出的现象,导致看不到运行结果。这不是程序的问题,而是因为程序运行结束,自动关闭了运行窗口。解决办法有如下几种:

1. 先运行 Windows 下的 MS-DOS(对于 Windows 98 等较老的 Windows 系统)或者“命令提示符”(对于 Windows XP 等较新的 Windows 系统),然后进入您想运行的 C/C++ 程序所在的目录。假设该程序位于 D 盘的 cprog 目录下,依次输入以下内容就可以进入该目录:

D:
cd cprog

接着输入该程序的名字,按回车,该程序就会运行起来。假设该程序的名字为 test.exe,我们可以这样输入:

test

其实,不用进入 cprog 也可以运行 test,输入如下:

D:\cprog\test



2. 第一种办法够简单吧?不过这第二种办法可更简单哦!在您想要暂停的地方加上 system("pause"); 就可以使 C/C++ 程序暂停。不过,这个办法奏效的前提是系统中必须存在 pause 这个命令。此外,还需要包含标准头文件 stdlib.h(对于 C)或者 cstdlib(对于 C++)。例如:

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
printf("I need a pause here.\n");
system("pause");
printf("And here too.\n");
system("pause");

return 0;
}

运行结果:



如果您的系统中没有 pause 这个命令,导致不能使用 system("pause"); 来暂停,请参考第三种方法。


3. 这种方法稍微有点复杂,但它通用于任何系统,只要这个系统拥有符合标准的 C/C++ 编译器。在您想要暂停的地方加上 getchar();(对于 C 和 C++)或者 cin.get();(仅适用于 C++)就可以使程序暂停,然后按回车程序就会继续执行。不过,您会发现,这种办法却不一定奏效。如果您够细心,会发现只有当 getchar();/cin.get(); 前面有接收输入的语句的时候,该办法才会失效。如果之前没有接收任何输入,该办法是 100% 奏效的!这是因为,如果前面接收了输入,输入流中可能会有残留数据,getchar();/cin.get(); 就会直接读取输入流中的残留数据,而不会等待我们按回车。解决该问题的办法是,先清空输入流,再用 getchar();/cin.get();。清空输入流的办法如下:

1). /* 适用于 C 和 C++。需要包含 stdio.h(对于 C)或者 cstdio(对于 C++)*/
while ( (c = getchar()) != '\n' && c != EOF ) ; /* 对于 C 和 C++ */

2). cin.clear(); // 仅适用于 C++,而且还需要包含标准头文件 limits
cin.ignore( numeric_limits<streamsize>::max(), '\n' );

例如:

#include <iostream>
#include <limits>
#include <cstdio>

using namespace std;

int main()
{
int i_test, c;

printf("Please enter an integer: ");
scanf("%d", &i_test);
printf("You just entered %d.\nPress enter to continue...", i_test);
while ( (c = getchar()) != '\n' && c != EOF ) ; // 清空输入流
clearerr(stdin); // 清除流的错误标记
getchar(); // 等待用户输入回车

cout << "Please enter an integer: ";
cin >> i_test;
cout << "You just entered " << i_test << ".\nPress enter to continue...";
cin.clear(); // 清除流的错误标记
cin.ignore( numeric_limits<streamsize>::max(), '\n' ); // 清空输入流
cin.get(); // 等待用户输入回车

return 0;
}

运行结果:



自我放逐。。。
2007-03-17 18:16
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
以下是引用xutaoneu在2007-4-14 15:44:29的发言:
怎么没有BORLANDC++

BORLANDC++ == dev c++ ==gcc


自我放逐。。。
2007-04-15 09:26
福尔摩斯
Rank: 5Rank: 5
等 级:贵宾
威 望:12
帖 子:4011
专家分:370
注 册:2006-8-15
得分:0 
以下是引用fyi1106在2007-5-3 16:35:49的发言:
楼主连getch()这个函数都不知道吗?干嘛还要用6楼那一大堆方法。

getch()函数不是标准的C程序函数

在标准的C89和C99都没定义

对于新手来说,学语言最好先学好标准

这是基础

所以,我才花一大段来写防止一闪而过的方法

这个和输入输出流有关系

而且

在谭浩强的书上是没有写的


自我放逐。。。
2007-05-03 16:59



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-124748-1-1.html




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

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