标题:关于新老版的C++程序请教,谢谢!
只看楼主
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
结帖率:80%
 问题点数:0 回复次数:4 
关于新老版的C++程序请教,谢谢!
先谢谢大家能看本人的帖,问题如下:
我在看C++的书时,怎么程序是这样的,
#include<iostream.h>
int add(int,int);
void main()
{
    int a,b;
    a=5;
    b=7;
    int c=add(a,b);
    cout<<"a+b="<<c<<endl;
}
int add(int x,int y)
{
    return x+y;
}
他们说这是老版本的,iostream.h这里带了.h

新版的:
#include<iostream>
using namespace std;
int add(int,int);
void main()
{
    int a,b;
    a=5;
    b=7;
    int c=add(a,b);
    cout<<"a+b="<<c<<endl;
}
int add(int x,int y)
{
    return x+y;
}
没有.h无法编译出来,要带了using namespace std;这个才行,不知道这个是什么意思?
我现在看的书上都带有.h,说明有点老了!我继续看这本书行吗?没有什么区别吧!
谢谢!
搜索更多相关主题的帖子: int add void 
2008-08-02 23:32
zjl138
Rank: 1
等 级:新手上路
威 望:1
帖 子:788
专家分:0
注 册:2007-11-12
得分:0 
建议使用iostream
后缀为.h的头文件c++标准已经明确提出不支持了,早些的实现将标准库功能定义在全局空间里,声明在带.h后缀的头文件里,c++标准为了和C区别开,也为了正确使用命名空间,规定头文件不使用后缀.h。

因此,当使用<iostream.h>时,相当于在c中调用库函数,使用的是全局命名空间,也就是早期的c++实现;当使用<iostream>的时候,该头文件没有定义全局命名空间,必须使用namespace std;这样才能正确使用cout。

还有建议这样写main()函数
int main()   //或int main(void)
{
   .......
   .......
   return 0;
}

i like linux...
2008-08-02 23:51
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
得分:0 
恩,理解了!那么我可以继续看我的这本书吗?然后注意一下头文件就行?
还是书必须换一本?

编程小菜
2008-08-03 00:16
很远的那颗星
Rank: 2
等 级:新手上路
威 望:4
帖 子:544
专家分:0
注 册:2008-6-30
得分:0 
如果是初学,也不是说非换书不可,只是要注意一下自已的编码风格,多写一下代码,遇到不会或觉得自已写的不错的代码可以发到网上来,让大家帮你看一下.

记住多写,多问.但不要把太多时间花在论坛,自已多看书才能进步看.

Fighting~~~~~~~~
2008-08-03 10:13
独孤小梦
Rank: 1
等 级:新手上路
威 望:1
帖 子:338
专家分:0
注 册:2008-6-5
得分:0 
呵呵,谢谢大家,现在知道怎么学了!非常感谢!

编程小菜
2008-08-03 21:49



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




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

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