LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 903|回复: 7

编译*.c中若干问题,附错误提示

[复制链接]
发表于 2006-5-15 08:48:58 | 显示全部楼层 |阅读模式
输入myenv.c文件如下:

#include
#include

  int main(void) {
                char *myenvvar=getenv("EDITOR");
                printf("The editor environment variable is set to %s\n",myenvvar);
              }


按照书中提示用gcc编译,出现如下提示:

$ gcc myenv.c -o myenv
myenv.c:3:9: 错误:#include 需要 "FILENAME" 或 <FILENAME>
myenv.c:4:9: 错误:#include 需要 "FILENAME" 或 <FILENAME>
myenv.c: 在函数 ‘main’ 中:
myenv.c:7: 警告:初始化时将整数赋给指针,未作类型转换
myenv.c:8: 警告:隐式声明与内建函数 ‘printf’ 不兼
容 l [

请教大侠是何原因?
发表于 2006-5-15 08:55:58 | 显示全部楼层
从哪里抄的代码?头文件呢?
回复 支持 反对

使用道具 举报

发表于 2006-5-15 10:27:52 | 显示全部楼层
确实发现,很多网页上c源程序只写了include没有后边的文件名,也不知为什么。
回复 支持 反对

使用道具 举报

发表于 2006-5-15 12:31:17 | 显示全部楼层
Post by saub
确实发现,很多网页上c源程序只写了include没有后边的文件名,也不知为什么。
因为他们的文章管理系统没有string_replace("<", "&lt;");导致类似<stdio.h>被浏览器认为是一个标签。

#include这样的错误楼主都没看出来,楼主应该基本的语法都不了解,建议买本C语言教材看看。
回复 支持 反对

使用道具 举报

发表于 2006-5-15 14:08:04 | 显示全部楼层
Post by ideawu
因为他们的文章管理系统没有string_replace("<", "&lt;");导致类似<stdio.h>被浏览器认为是一个标签。

正解      
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-15 22:34:44 | 显示全部楼层
Post by ideawu
因为他们的文章管理系统没有string_replace("<", "&lt;");导致类似<stdio.h>被浏览器认为是一个标签。

#include这样的错误楼主都没看出来,楼主应该基本的语法都不了解,建议买本C语言教材看看。

==============

[size=+2]
多谢指点!!! 我是业余人员,接触电脑才三年,在去年十月听说linux后,一下就喜欢上它了。让大家见笑了~~。我刚对shell有了点认识,c语言我慢慢地学,多了记不着。
我用的是fc5,全部安装。应该是我不会用的原因。如何补全呢?

我会更加努力的!!!!再次谢谢大家!!!
[[[/in
回复 支持 反对

使用道具 举报

发表于 2006-5-16 12:45:37 | 显示全部楼层
使用哪一个版本的Linux与学习C语言基础关系不大,因为楼主刚开始接触Linux,所以完全安装FC5的作法很好---这并不是你不会C语言基础知识的原因,原因是你还没有学习到。初学C语言还是找一本外国人(美国人)写的教材,一步一步地看。试验书上的例程,不要到网上乱找代码。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-5-16 20:06:54 | 显示全部楼层
:thank  [size=+1]有大家的帮助,我更要多加 努力!!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表