*.cxx与.cpp文件有何不同处?

pan2008 2003-07-25 01:00:26
*.cxx与.cpp文件有何不同处?
为何两样的后嘴名
...全文
2115 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
loverP 2003-07-27
  • 打赏
  • 举报
回复
VC好像默认生成C++代码,除非你加上extern "C" {}
firingme 2003-07-27
  • 打赏
  • 举报
回复
以VC7编译器cl.exe为例:

cl /? >> cl.txt
参看cl.txt可以看到如下说明:

****************************************************************
/Tc<source file> 将文件编译为 .c
/Tp<source file> 将文件编译为 .cpp
/TC 将所有文件编译为 .c
/TP 将所有文件编译为 .cpp
****************************************************************

因为C++编译器即可以编译C代码,也可以编译C++代码,所以,编译器需要一个机制来识别待编译的代码到底是C++代码还是C代码。为什么要区分两种代码呢?请看如下函数:

****************************************************************
int TestFunc ( int a, int b )
{
return a+b ;
}
****************************************************************

如果采用C方式编译,那么得到的TestFunc实际名字应该是:_TestFunc@8或者其他的类似名字,可以看出,C方式编译出来的函数名还比较好识别。

如果采用C++方式编译,那么得到的TestFunc实际名字就会变成:_TestFunc@XYZajdjkwe一类乱七八糟的样子,这种方式编译出来的函数名就很复杂——主要也是为了适应C++名字空间和模板一类的特性的需求


zjxushengyong 2003-07-27
  • 打赏
  • 举报
回复
谢谢 zhouyong0371(小周周) 的热心回答
zhouyong0371 2003-07-25
  • 打赏
  • 举报
回复
产生的可执行程序也相同。
zhouyong0371 2003-07-25
  • 打赏
  • 举报
回复
自己试一下吧,.cxx可以代替.cpp
请创建一个Win32 Application
new一个*.cxx
添加如下代码:
#include <windows.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
PSTR szCmdLine, int iCmdShow)
{
MessageBox (NULL, TEXT ("Hello, Windows 98!"), TEXT ("HelloMsg"), 0) ;

return 0 ;
}

运行效果和.cpp相同。
zjxushengyong 2003-07-25
  • 打赏
  • 举报
回复
IDL->C++是接口定义语言吧...
aomeng 2003-07-25
  • 打赏
  • 举报
回复

idl> c++ 的东西吧.
zjxushengyong 2003-07-25
  • 打赏
  • 举报
回复
to zhouyong0371(小周周) :

是不是说.cxx可以代替.cpp啊,我好象在vc中没有见过.cxx哦

.cxx是什么编译器默认的后缀啊...
zhouyong0371 2003-07-25
  • 打赏
  • 举报
回复
vc下一样可以识别.cxx的文件
zjxushengyong 2003-07-25
  • 打赏
  • 举报
回复
那他们分别是什么编译器的后缀呢?我只知道vc可以生成.cpp的后缀文件,请大侠赐教,谢谢!
Kusk 2003-07-25
  • 打赏
  • 举报
回复
编译器不一样,所需要的后缀名也不一样吧。各编译器有不同的要求。没有什么实质区别。
antijpn 2003-07-25
  • 打赏
  • 举报
回复
没有区别,只不过是不同编译器的缺省后缀不同而已
hsgcw 2003-07-25
  • 打赏
  • 举报
回复
mark
pan2008 2003-07-25
  • 打赏
  • 举报
回复
.scc文件是干什么用的

69,382

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧