C语言中的#include <stdio.h> 跟C++中using namespace std;有什么区别

C语言中的#include<stdio.h>跟C++中usingnamespacestd;有什么区别?C语言里面好像没有Vector概念,但C++里有,求大师前来解答... C语言中的#include <stdio.h>
跟C++中using namespace std;有什么区别? C语言里面好像没有Vector概念,但C++里有,求大师前来解答
展开
 我来答
454517408
2011-10-29 · TA获得超过434个赞
知道小有建树答主
回答量:131
采纳率:0%
帮助的人:151万
展开全部
using namespace std是C++的一个标准命名空间
可以自己定义命名空间,如:
using namespace aa;
C++引入命名空间主要是用来解决不同文件中全局变量的重名问题

比如一般大型的项目开发是由多个人一起完成的,每个人编写自己的一部分
最后再由一人把这些别人编写好的程序引用过来使用
例:
A的文件中定义了int k;B的文件中也定义了int k;而C要把A和B的文件同时引用过
来使用,他在使用全局变量k时就会发生错误。系统无法辨别他要使用的是A中的还是
B中的。
如果A和B在编写过程中都定义了自己的命名空间并把int k放在其中
A:
namespace A
{
int k;
}
B:
namespace B
{
int k;
}
这时C引用时就要加上空间名,A::k B::k就解决了全局变量的重名冲突的问题
而C语言是没有命名空间的
追问
追问加分,只是个形式,感谢你的回答,我理解了。但如下有个问题为什么结果为零?
#include // 加了这个头文件的原因 不知道怎么搞的 &
#include
#include

using std::vector;
using std::endl;
using std::cout;

using namespace std;

int main()
{
vector vec;
vec.push_back( 12 );

cout ( *vec.begin() - 14 ) << endl;
return 0;
}
追答
#include // 加了这个头文件的原因 不知道怎么搞的 &
#include
#include

using std::vector;
using std::endl;
using std::cout;

using namespace std;

int main()
{
vector vec;
vec.push_back( 12 );

cout 删除可以出结果,至于为什么我也不知道
return 0;
}
fjn_lhxy
2011-10-29 · TA获得超过374个赞
知道小有建树答主
回答量:566
采纳率:0%
帮助的人:450万
展开全部
没啥关系。。
using namespace std 标准命名空间。
如果在c++中不写的话 像cout、cin、及那些STL都要在前面写上命名空间std::
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
DIE砂
2011-10-29
知道答主
回答量:4
采纳率:0%
帮助的人:3.1万
展开全部
基本相同。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
heresy_me
2011-10-30 · TA获得超过1719个赞
知道小有建树答主
回答量:1708
采纳率:42%
帮助的人:303万
展开全部
#include <vector>
#include <complex>
#include <iostream>
int main()
{
std::vector<int> vi;
vi.push_back(12);
std::cout << std::abs<int>((*vi.begin())-14) << '\n';
return 0;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
肖婷0
2011-10-29 · TA获得超过237个赞
知道答主
回答量:250
采纳率:0%
帮助的人:231万
展开全部
顶楼上
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式