Fledgling 发表于 2004-4-29 08:33

C和C++到底有什么区别?

<P>C语言和C++语言到底有什么区别?</P>
<P>他们都能做些什么呢?</P>

ilikenba 发表于 2004-4-29 08:47

<P>二者的区别是挺大的呀,虽然二者的语法相近,但是C++是完全面向对象的,尤其在Win32编程中会体现出它的优势,它有强大的类库!提到能做什么,应该几乎什么都能做,Windows操作系统就是用C语言编写的,但是对于现在比较热门的.net编程,二者都显得有些不协调了,但是它们仍然是使用最多的编程语言!</P>

Fledgling 发表于 2004-4-29 13:12

<P>Windows操作系统就是用C语言编写的,但是对于现在比较热门的.net编程,二者都显得有些不协调了</P><P>这句话是什么意思?</P>

ilikenba 发表于 2004-4-29 15:01

<P>Windows操作系统是由C语言编写的,这说明了C可以做到几乎所有的计算机操作!但是对于现在比较热门的.net编程来说,由于它采用的是非完全编译的模式,也就是生成了一种所谓的中间语言,来达到能够跨平台操作的目的,但是对于C或C++语言由于和操作系统的底层接触的比较紧密,再加上为了保证执行效率而采用的是完全编译的模式,所以在.net领域中就显得有些不适合了,虽然微软发布了Vistual C++.net,但是有些地方仍然难以协调!</P>

愿雨飞扬 发表于 2004-5-4 11:46

鼓掌,多谢

微笑的刺客 发表于 2004-5-8 17:44

<DIV class=quote><B>以下是引用<I>ilikenba</I>在2004-4-29 8:47:15的发言:</B>

<P>二者的区别是挺大的呀,虽然二者的语法相近,但是C++是完全面向对象的,尤其在Win32编程中会体现出它的优势,它有强大的类库!提到能做什么,应该几乎什么都能做,Windows操作系统就是用C语言编写的,但是对于现在比较热门的.net编程,二者都显得有些不协调了,但是它们仍然是使用最多的编程语言!</P></DIV>
<P>不错,不过有些不同的理解。c++并不是完全面向对象的,为了向下兼容C(C++是C的超集),它包含了很多过程性的东西,这也是C++过于复杂的一个原因。</P>

微笑的刺客 发表于 2004-5-8 17:47

感觉微软把其他语言加到.net下只是为了拉拢程序员,真正为.net设计的是C#

无名 发表于 2004-5-9 10:21

“Windows操作系统就是用C语言编写的,但是对于现在比较热门的.net编程,二者都显得有些不协调了”这句话说的没道理,dotnet采用的是一种虚拟机的方式,虚拟机的概念我想每一本操作系统或计算机体系结构入门书第一章都会讲到,vc++dotnet提供托管与非托管编程方式,托管的vc代码运行在dotnet framework(虚拟机)上,非托管的vc代码直接编译为机器码
[此贴子已经被作者于2004-5-9 10:26:17编辑过]

lckboy 发表于 2004-5-9 12:53

<P>无名说得有理!.net Framework是指令级虚拟机,所有非托管C++是直接编译成机器码!</P><P>我认为,可以肯定的是,C++不是完全面向对象,但C++也并不是C语言的超级,是完全的一种新语言,如果你从宏观的角度去看C++的发展,以及微观地去理解C++的对象模型以及内存机制,你会发现C++已经比C语言先进很多,其次,C++发展到了今天,STL的大行其道,GP的威力,你还能说C++是C语言的超级吗?</P>

gu4048 发表于 2004-5-26 19:08

<ADDRESS><FONT face=细明体 size=2>C语言,C++,VB.net,都是编程的。我只学过一点点的C语言,</FONT></ADDRESS><ADDRESS><FONT face=细明体 size=2>听说 VB.net 很难学的,可是我以后又必须得学,对于编程我怕怕的,</FONT></ADDRESS><ADDRESS><FONT face=细明体 size=2>可是又很想学好,不知道怎样才能学好啊?</FONT></ADDRESS>
页: [1] 2
查看完整版本: C和C++到底有什么区别?