• 9029阅读
  • 10回复

【提问】 请问一下:有什么特性 c有而c++没有的? [复制链接]

上一主题 下一主题
离线zccmin
 
只看楼主 倒序阅读 楼主  发表于: 2005-12-13
请问一下:有什么特性 c有而c++没有的?
c++容纳所有c吗?
在线XChinux

只看该作者 1楼 发表于: 2005-12-13
这样的问题最好不要在这里问,找资料学习才是上策。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线zccmin
只看该作者 2楼 发表于: 2005-12-14
说实话吧,我是用c和c++的 ,但是有人问我这问题,我硬是回答不上来。
因为我没有在哪具体看到过讲 c++包含所有c,也没看到过说:c有什么而c++没有的。
哪位能否给一个具体的答案?
离线不想重名
只看该作者 3楼 发表于: 2005-12-15
我知道一点点: 就是,如果C有而C++没有的东西,绝大多数目前的C语言书籍不会介绍。不过可以在一些很老的源代码中找到。因为这些东西在后来的C中已经不推荐使用了。

比如,下面一个例子:

int Max(a,b)
int a,b;
{
  if (a>b) return a;
  else return b;
}

这个例子我没有在C++中试过,我感觉C++不支持。
离线fanyu
只看该作者 4楼 发表于: 2005-12-15
关键要看你用的是什么C++编译器了。这段代码是很过就过时的C的一种标准,我记得是TC 2用过的。
上述代码在 Borland C++ 5.6.4中编译通过。

最后说一下,C++是100%兼容C的、
离线不想重名
只看该作者 5楼 发表于: 2005-12-15
谢谢,fanyu.
在线XChinux

只看该作者 6楼 发表于: 2005-12-15
C++百分之百兼容C?
不是百分之百兼容的。
C++兼容于C的部分的加强的些内容:
比如,强类型检查。在C++中,必须声明后才能使用。
比如下面的例子:
我在C里能通过而在C++里就通不过(使用的是GCC(gcc/g++)):
main.c/main.cpp

#include <stdio.h>
main()
{
printf("\nHello world\n");
fna();
}
int fna()
{
printf("\nIn Funca\n");
}
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线zccmin
只看该作者 7楼 发表于: 2005-12-16
我觉得XChinux的例子不足以说明这是c有的特性而c++没有。
这例子代码其实无论在什么编译器里出现其实都是c代码。
之所以在有的c++编译器里不能通过是,也许只是因为c++编译器比c编译器更严格
离线zccmin
只看该作者 8楼 发表于: 2005-12-16
我说两点c的特性,大家看看是否有区别于c++。
至于普通的语法方面,我也是认为c++完全兼容c的。
1,通常情况下,由于c++是面向对象,所以c的效率比c++快,因而一般的驱动程序以及内核代码都由c写。
2,c可以与汇编混合写程序,c++有没有?(我没具体看到 : 说c++不能混合汇编写文件)
离线nanhu_007

只看该作者 9楼 发表于: 2005-12-29
这个问题是没有意思的,坚定完毕!
离线风中纸页
只看该作者 10楼 发表于: 2005-12-31
这个问题问得没有意义。

勉强可以解释的是看编译器的具体实现。用某位大师的话“ Read The F*cking Compiler"。。。呵呵。。。
把问题先交给google,再交给你的朋友。谢谢。
快速回复
限100 字节
 
上一个 下一个