`
ispring
  • 浏览: 355653 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Ubuntu 下写C程序

阅读更多

今天想在Ubuntu下练练手,写写C语言(本来早就该在Linux下学C了),结果发现C的格式差不多都忘记光了

自然,第一个程序仍然是经典的 HelloWorld

 

#include <stdio.h>

void main() {
    printf("Hello World!");
}

 

在ubuntu下,GCC 是不调用stdio.h的。需要include,如果没有include,则可能:隐式声明与内建函数 ‘printf’ 不兼容

#include <stdio.h> 是指包含标准输入输出库函数stdio.h。
在stdio.h中有关于printf函数的声明。在linux系统下,你可以通过执行"whereis stdio.h"找到stdio.h的路径,查看其中内容,通过man stdio查看该库的功能。另外我们也可以用man命令查看printf的功能。

 

首次在ubuntu下编译c源程序,使用gcc,但是提示如下出错信息:
test.c:1:19: 错误: stdio.h:No such file or directory
test.c:2:23: 错误: sys/types.h:No such file or directory
test.c:3:20: 错误: signal.h:No such file or directory
test.c:4:20: 错误: ourhdr.h:No such file or directory

 

ubuntu的特点是,安装包比较小,结果导致什么都缺,开始时装了gcc,但是没有装glibc的头文件,更不要提什么文档了,所以安装完更新后的首要 任务是把一个简单c语言环境配置好,当然如果你用的是别的系统的话,你就不用在这上面浪费时间了,既然使用了ubuntu那就得跟着遭这份罪吧。


基本意思就是没有这些文件或者目录,原因就是没有安装库文件,使用如下命令安装解决该问题:
                   sudo apt-get install libc6-dev

安装过程
Password:
正在读取软件包列表... 完成
正在分析软件包的依赖关系树      
读取状态信息... 完成            
将会安装下列额外的软件包:
  linux-libc-dev
建议安装的软件包:
  glibc-doc manpages-dev
下列【新】软件包将被安装:
  libc6-dev linux-libc-dev
共升级了 0 个软件包,新安装了 2 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。
需要下载 3685kB 的软件包。
解压缩后会消耗掉 16.4MB 的额外空间。
您希望继续执行吗?[Y/n]y
获取:1 http://ftp.sjtu.edu.cn feisty-security/main linux-libc-dev 2.6.20-16.29 [667kB]
获取:2 http://ftp.sjtu.edu.cn feisty/main libc6-dev 2.5-0ubuntu14 [3018kB]
下载 3685kB,耗时 2s (1369kB/s)    
选中了曾被取消选择的软件包 linux-libc-dev。
(正在读取数据库 ... 系统当前总共安装有 116970 个文件和目录。)
正在解压缩 linux-libc-dev (从 .../linux-libc-dev_2.6.20-16.29_i386.deb) ...
选中了曾被取消选择的软件包 libc6-dev。
正在解压缩 libc6-dev (从 .../libc6-dev_2.5-0ubuntu14_i386.deb) ...
正在设置 linux-libc-dev (2.6.20-16.29) ...
正在设置 libc6-dev (2.5-0ubuntu14) ...

问题解决……

 

当然linux下得手册是十分丰富得,如果没有你可查找安装,没有man手册或许有其他格式得手册。始终要记得手册是一种基本技能,你必须学会使用它

软件如下,ddd, anjuta,valgrind,libglade2-dev

分享到:
评论
1 楼 langzhe 2010-07-16  
不上几句 收藏一下。
先装Gcc或者不装也可以

打开终端:输入vi

进去后按i进去编辑状态,输入你的c程序

输入完成后按ESC

输入命令":w 123.c"

Ctrl+z推出vi

在终端中输入:gcc 123.c

如果正确会生成a.out的文件

在终端中输入:./a.out就可以运行你的c了!!!!

相关推荐

Global site tag (gtag.js) - Google Analytics