主页 > 程序语言 > C++ 是什么?

C++ 是什么?

2023-11-24 16:40来源:m.sf1369.com作者:宇宇

C++ 是什么?

C语言是结构化和模块化的面向过程的语言,C++语言是面向对象的程序设计语言。C++语言是C语言的超集,也就是说学会了C++,你其实已经把C语言学会了。至于说有什么区别,应该说是编程思想的区别吧,C是基于过程的,强调的是程序的功能,以函数(功能)为中心。C++是面向对象的,强调程序的分层、分类,以抽象为基础,进行对象的定义与展示,即程序设计。具体说来话长。建议你学习C++的时候,学会用面向对象的方式思考和编程。现在在开发大项目的时候,都是应用面向对象的分析和设计的技术。

C和C++的区别有什么

今天在网易上看到有人问C和C++的区别有什么,在这里简略说点.

其他的东西都不需要多说,就象类,继承,引用等,大家都知道.

这里讲的是调用编译的区别.大家看WIN32 SDK的头文件,总是可以看到

ifdef __cplusplus

extern C

endif

ifdef __cplusplus

endif

这个就是直接能够体现实际编程时区别的地方. 在WIN系列下.所有的WIN32 SDK提供的LIB都是以C的形式存在的.当然,C和C++同样都支持C,STDCALL,FASTCALL调用.为什么系统提供C编译器编译的LIB而不是C++编译的LIB呢?这里其实就是C和C++编译器不同的地方.

所有的函数名称只有在汇编编译器下才最清楚.因为经汇编编译器编译的函数不经过任何修饰.

C 的编译器编译出来的函数名称如果在汇编编译器看来一个C调用将在函数名前家下划线('_').而一个STDCALL的函数将是_FUNC@NUMBER的形式.如FUNC(void)经过编译器后成为_FUNC@0.一个FASTCALL调用的函数被编译成@FUNC@0.顺便提一下.在WIN32的编译器里不再需要PASCALL调用.VC6已经取消了对PASCALL的支持.

光看C的编译还不够,看一下C++编译器是怎么干的.在缺省情况下.一个C++的函数经过C++编译器后编译出的函数名包括函数名,所属的类,参数类型,调用约定,返回类型.而且更要命的是这么多的信息,只有函数名和类名在编译后还依稀可见.其他就是一长串的ABCD字母,根本就是无法辨认其意义的.我们在VC手册里可以看到

一个例子:

void __stdcall b::c(float); ---> ?c@b@@QAGXM@Z

一个函数被编译得连名字也不知道怎么样了.这么一来.如果SDK提供的是C++编译器提供了LIB.那么可以说就无法编译任何一个完整的WIN程序.更加不用说什么混合语言编程.

现在,VC编译器提供了个extern语句.当出现extern 'C'语句,括号里的函数将以C方式经过编译器.从而使提供库程序方便那么点.

C语言与C++的区别有很多:

1,全新的程序程序思维,C语言是面向过程的,而C++是面向对象的。

2,C语言有标准的函数库,它们松散的,只是把功能相同的函数放在一个头文件中;而C++对于大多数的函数都是有集成的很紧密,特别是C语言中没有的C++中的API是对Window系统的大多数API有机的组合,是一个集体。但你也可能单独调用API。

3,特别是C++中的图形处理,它和语言的图形有很大的区别。C语言中的图形处理函数基本上是不能用在中C++中的。C语言标准中不包括图形处理。

4,C和C++中都有结构的概念,但是在C语言中结构只有成员变量,而没成员方法,而在C++中结构中,它可以有自己的成员变量和成员函数。但是在C语言中结构的成员是公共的,什么想访问它的都可以访问;而在VC++中它没有加限定符的为私有的。

4,C语言可以写很多方面的程序,但是C++可以写得更多更好,C++可以写基于DOSr程序,写DLL,写控件,写系统。

5,C语言对程序的文件的组织是松散的,几乎是全要程序处理;而c++对文件的组织是以工程,各文件分类明确。

6,C++中的IDE很智能,和VB一样,有的功能可能比VB还强。

7,C++对可以自动生成你想要的程序结构使你可以省了很多时间。有很多可用的工具如加入MFC中的类的时候,加入变量的时候等等。

8,C++中的附加工具也有很多,可以进行系统的分析,可以查看API;可以查看控件。

9,调试功能强大,并且方法多样。

用C语言和VB语言写的两个程序,C语言中建立个文本文框,用vb实现监控c语言中的文本框,当C语言中的文本框有内容时,vb有提示。

先用C语言创建文本框

#include <stdio.h>  //使用printf函数要包含的头文件

#include <conio.h>

int WriteDat(void);

void main(void)  //主函数

{    if(WriteDat())

  {    printf(创建文件出错:\n);

  }

}

int WriteDat(void)

{

    FILE*fp;

 if((fp=fopen(F:\\out.TXt,w))==NULL)

 {    return 1;

 }

 else

 {    return 0;

 }

 

}

然后在文本框输入内容,保存。

使用VB语言,提示文本框的内容

Private Sub Form_Click()

Dim a As String

Open F:\out.txt For Input As #1

Input #1, a

If a <> Then

MsgBox 文本框中有内容, vbInformation + vbAbortRetryIgnore, 文本框提示

End If

Close #1

End Sub

相关推荐

哪些编程语言是函数式的

程序语言 2024-01-14

VB编程的函数详解

程序语言 2024-01-02

c语言扑克牌问题

程序语言 2023-12-28

iphone语言与地区有什么用?

程序语言 2023-12-19

C语言程序,怎么使用,

程序语言 2023-12-17

把word嵌入到C#程序中

程序语言 2023-11-26

HTML是不是编程语言?

程序语言 2023-11-17