标题: 关于头文件的 问题
rage_YAS
新生入学
Rank: 1
注册用户



UID 197061
精华 0
积分 0(积分有什么用?)
帖子 14
阅读权限 10
注册 2007-5-28
状态 离线
发表于 2007-6-4 18:11  资料  个人空间  短消息  加为好友 
关于头文件的 问题

我 写 的 小程序 中,用的 了#include <iosream>这个头文件,因为我要 用 cout这个函数,这个头文件,应该是 c++的标准头文件,只要是 C++都可以使用的 。
Hgy o}Ns*A程序很简单,如下 :\R        Y I4|&@9?wO$R2l
#include <iostream>
}Vp(x`&\-Z#gY(j
1V l\o#s:SM!D
n+~J}!\fint main()www.linuxeden.com(M*^0B*ty*f
{(ziCd\5Y
    cout <<"this is test.edited by yas\n"<<endl;
9g7vEZ0M    return 1;Linux伊甸园论坛lv0hr0GIMQ
}-tC]'_Z\2P$Y5G
}5ZNm\h
然后执行:Q(n4t UgB,f
Cl        H

[root@localhost ctest]# g++ -c unnamed1.cpp
G2\t
l
uF
unnamed1.cpp: In function ‘int main()’:
@Bu+IN!b;nunnamed1.cpp:6: 错误:‘cout’ 在此作用域中尚未声明
"d        z9R'L"Yunnamed1.cpp:6: 错误:‘endl’ 在此作用域中尚未声明
-k{;[\Q3K8c8P6ZTwww.linuxeden.com
a!Mk)Xu:{.Z'sLinux伊甸园论坛就报警了 。
7|@/u!p?cx兄弟们,给我些指示阿。
)Ii/{_N4^1u)a8Q用 #inculde<stdio>和printf();就可以 。
i\D7p"r{www.linuxeden.com希望,兄弟们,照顾 我这个,在成长中的 小菜鸟了 www.linuxeden.com.Te$T$nb({(n:a        g
兄弟 ,深深 谢过了 。

Q3w W*L2R
Ivct1Y&~hwww.linuxeden.com
)^@\E#?%^%l`0y
[ 本帖最后由 rage_YAS 于 2007-6-4 18:33 编辑 ]

顶部
不容错过的IBM 集群技术资源汇总
rage_YAS
新生入学
Rank: 1
注册用户



UID 197061
精华 0
积分 0(积分有什么用?)
帖子 14
阅读权限 10
注册 2007-5-28
状态 离线
发表于 2007-6-4 18:52  资料  个人空间  短消息  加为好友 
以下是我引用别人的 “”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”
BEa$W[{www.linuxeden.com
q5K+eZi!n\.E 在群里看到这么一行代码:#include "iosteam.h"xb
O9_;c


-D-w}/m&H~TLinux伊甸园论坛    开始我很吃惊,这人太有才了,佩服撒,居然想到用引号来写系统文件?干吗不用尖括号呢?当然了,这样子写,编译器不会有任何警告,也不会告诉我们这样子是错的,表面上看上去还真是没影响,其实不是的,下面说下这两种写法的一点点区别,希望对初学者有点帮助,从开始养成好习惯对以后会有很大的帮助的。4t&O1~6HNW
`*P%T/i;i
n

    #include 后的文件名用尖括号(<>)括起来,说明这个头文件是系统提供的,编译程序时,编译器会直接到系统目录下去查找该头文件并加载之。
7@w8Z(RmG5T    #include 后的文件名用引号("")引起来,一般用于自定义头文件,当编译程序时,编译器会先到当前工程目录下去寻找该文件,如果找不到会再到系统目录下去寻找。如:我们采用多文件结构定义一个类的时候,类的声明写在:类名.h中,;类的实现写在类名.cpp中,我们需要在类名.cpp中加上头文件"类名.h";)AKF$V@rQ/?L

%{(D_8x!y$R0lg;~www.linuxeden.com   另外,在标准c++中头文件是不带后缀.h的:$q
va
dq+I

即:#include <iostream.h>应该写为#include <iostream>,也许有人会问,如果这样子写,不能在程序中直接使用cout/cin等,的确,因为采用#include <iostream>要包含命名空间std才能直接使用cout/cin,否则就要在该头文件中定义的函数/变量前加上std::来表示调用函数/变量的来源...
$HsQWf z  
~Q        u.f%CUbG

   还有一点,大家会发现好多头文件是以字母c开头的,如:cmath,cstdio,cstring等,因为这些是继承的c的头文件,用来区分c++自己的头文件,c++中可以使用#include <math.h>来直接使用c的头文件,但是不赞成使用该方法,建议使用#include <cmath>.....www.linuxeden.com0P.J@1Nx

Tp        BCzeLazcLinux伊甸园论坛   以上是对c++中头文件的一点看法,有不对的地方请留言告诉我,或者耽误您的时间给我发邮件:zjc196@163.com,您让我学到的任何知识,我都会感激的...
)q.d%TA6ugZ!q
L.Rwww.linuxeden.com
  
a^'aw8^j;^8a#sGLinux伊甸园论坛   写的有点乱....

do
pR3O@


[*_8Ut
Sh
^*[Wwww.linuxeden.com
“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”“”
u#@
S6MH        |Cawww.linuxeden.com
,JF(wm9\#P\,i/W

1m)Q!@e9tLinux伊甸园论坛
4Q:]7\$`+DU^K_}1Ui我写的那个小程序中,把 cout ,endl写成,std::cout 和std::endl,就可以 通过编译了 ,我很感谢他。S5g$@bg,z[

5uF;{8B        L        @1S6s希望给大家 有所帮助,另外,我还是不清楚,怎么作就可以 直接用cout,endl,不知道怎么包含命名空间std。Linux伊甸园论坛/A"`5F]7h ?
希望兄弟们,指点阿。
^7a y
vh3MseZR
1L({[fj)k0Z
[ 本帖最后由 rage_YAS 于 2007-6-4 18:53 编辑 ]

顶部
rage_YAS
新生入学
Rank: 1
注册用户



UID 197061
精华 0
积分 0(积分有什么用?)
帖子 14
阅读权限 10
注册 2007-5-28
状态 离线
发表于 2007-6-4 19:06  资料  个人空间  短消息  加为好友 
兄弟们,我找的答案了 www.linuxeden.com'k%t,Vx9RZ;G
7l.AQ'c2?K#c
在 #include <iostream>Linux伊甸园论坛;hi e%T;K+o0`
下面加上这句;O8|Do%|[$T]
using namespace std;

顶部
不容错过的IBM 集群技术资源汇总
zkj2007
新生入学
Rank: 1
注册用户



UID 196210
精华 0
积分 0(积分有什么用?)
帖子 3
阅读权限 10
注册 2007-5-13
状态 离线
发表于 2007-6-5 09:57  资料  个人空间  短消息  加为好友 
对cout的另一种写法

可以不用using namespace std;
8~4PaL        I
'nd+Vm9t-x
zOt~h
在使用cout时,可以这样写:std::cout

g#HW5rHa

li)qc1]M{BLinux伊甸园论坛我也是才开始学C++,在家相互学习

顶部
不容错过的IBM 集群技术资源汇总
MMMIX
小试牛刀
Rank: 2
注册用户



UID 147141
精华 0
积分 0(积分有什么用?)
帖子 79
阅读权限 10
注册 2006-1-11
状态 离线
发表于 2007-6-8 01:41  资料  个人空间  短消息  加为好友 


QUOTE:
原帖由 rage_YAS 于 2007-6-4 19:06 发表
6R0A2p+El.Qg#|7H%SbKHLinux伊甸园论坛兄弟们,我找的答案了
JJ$W#@L        EI+]
        @}{5P,r7ywww.linuxeden.com在 #include
#j/Re&P}1J        X2h"@Q'A下面加上这句;j5y
m7G3E#Tz

using namespace std;

OC~ u#ewww.linuxeden.com这个还要找?书上没有讲?

顶部
不容错过的IBM 集群技术资源汇总
 



当前时区 GMT+8, 现在时间是 2008-5-17 11:01

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.200886 second(s), 7 queries

清除 Cookies - 联系我们 - Linux伊甸园 - Archiver - WAP