怎样辨别是用C编译的代码,还是C++编译的代码
4个回答
展开全部
首先:要看你的编译环境,有的编译环境是区分C/C++的,而像VC++这样的,就不区分,兼容。
一般情况来说,C语言代码是可以用C++编译器编译的,但是C编译器,就一般不能编译C++代码。
自己区分的话:
1、包含头文件格式:
#include<iostream>
和有using namespace的,都应该属于C++的内容。
而#include<iostream.h>也应该是C++,因为它属于C++的库,由于C++代码可以应用C语言的函数库,所以比较难区分。
比如#include<stdio.h>的,不一定就是C语言代码。
2、出现class定义的类的,无疑是C++代码。
3、应用到STL,模板等特性的,也应该算是C++代码。
不应该强行区分,因为本来C++就是对C的扩展,如果强制用C语言编写程序,则可以再看一些C语言的书,重点看出两者的不同。
一般情况来说,C语言代码是可以用C++编译器编译的,但是C编译器,就一般不能编译C++代码。
自己区分的话:
1、包含头文件格式:
#include<iostream>
和有using namespace的,都应该属于C++的内容。
而#include<iostream.h>也应该是C++,因为它属于C++的库,由于C++代码可以应用C语言的函数库,所以比较难区分。
比如#include<stdio.h>的,不一定就是C语言代码。
2、出现class定义的类的,无疑是C++代码。
3、应用到STL,模板等特性的,也应该算是C++代码。
不应该强行区分,因为本来C++就是对C的扩展,如果强制用C语言编写程序,则可以再看一些C语言的书,重点看出两者的不同。
2008-04-10
展开全部
最显著的特征是头文件,C++中包含头文件一般不写扩展名(如iostream),C中则要写.h扩展名(如stdio.h)
其次,输出输入函数也不相同,C语言中的printf()、scanf()函数到了C++中就成了cout、cin
C++有命名空间的概念,而在C中则不存在,例如,调用cout函数时,就要写成std::cout
其次,输出输入函数也不相同,C语言中的printf()、scanf()函数到了C++中就成了cout、cin
C++有命名空间的概念,而在C中则不存在,例如,调用cout函数时,就要写成std::cout
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1,看头文件<stdio.h> 50%以上是 C;
<iostream> 90% 以上是C++
2,输入输出;
cin>>
cout<< 肯定是c++
scanf()
printf() C
其他还有。。这几个你够用了。。
<iostream> 90% 以上是C++
2,输入输出;
cin>>
cout<< 肯定是c++
scanf()
printf() C
其他还有。。这几个你够用了。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2008-04-10
展开全部
1.头文件 c #include<stdio.h>
c++ #include<iostream.h>
或 #include<iostream>
useing namespace std;
2.输入输出 c printf("");scanf("");
c++ cout<<; cin>>;
3.出现重载函数,class类定义则可以是c++
4.不过以上两点要看编译环境,在vc++都可以,不容易区分;
5.在学习c++后会有更多的功能,应该很容易便可以分出。
c++ #include<iostream.h>
或 #include<iostream>
useing namespace std;
2.输入输出 c printf("");scanf("");
c++ cout<<; cin>>;
3.出现重载函数,class类定义则可以是c++
4.不过以上两点要看编译环境,在vc++都可以,不容易区分;
5.在学习c++后会有更多的功能,应该很容易便可以分出。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询