C和C++语言能写什么呢?

C和C++语言是不是只能写引擎之类的核心东西?而这些核心东西的概念和写法谁能大概粗略地说一下?
我的意思是C语言和C++只能写不是表面的东西,那表面的那些东西应该用什么来写???比如IE,是有界面的,不是黑色的DOS界面,那如果也使用C,C++写的,那么是什么软件把它弄成WINDOWS下的样子的?

要清楚这些问题,要了解下计算机的发展史.
特别是编程语言的发展史和计算机图形学的发展史.

------------------------------------
粗略说下:以计算机体系构建来说

1,计算机最本质的东西就是电路的开关,在逻辑上就是0和1.整个计算机世界就是由这两样东西构成的.计算机世界的规则就是电路,(并行,串行,短路),在逻辑在就是三个运算:0+0=0,1+0=0+1=1和1=1=0. 你在计算机上看到的东西,最终都要归纳为这个由二种事物和三件规则构成的世界.

2,计算机在硬件层面上的集成电路,就是通过二事三则来实现最基础的数学运算,逻辑运算,以及其它相关运算.形成了机器指令. 机器指令本质上就是01串. 表示上可有多种,如十六进制表示.这些机器指令集构成机器语言,机器语言按一定的内在逻辑,实现所有的计算.

3,由于机器语言容易出错,可读性差,因而需要改进,故而出现了汇编语言.汇编语言是一个巨大的进步,实现了机器语言的抽象和分离.可以通过汇编器,把汇编语言翻译为机器语言,要注意的是,唔同的机器体系,机器指令不同,机器语言也不同,所以不同的机器有不同的汇编.由于汇编言语需要对计算机有深刻的理解,而且在大型开发上力不从心.因而出现了fortran,ada,cobol等等语言.

4,关于c和c++的发展历史,不用多说,想说的是,这两种语言最终要编译为机器语言的.详细请看编译原理.

5,现在说说c和c++的应用,
首先,现在主流操作系统unix系列,linux系列的内核是用c和汇编语言编写,unix系列,linux系列的xwindow等等,大多数是用c和c++编写的. 至于windows,用汇编,c,c++,c#(听说在vista上用到)编写.
其次,网络协议,这个是互联网基础,unix和linux是用c,windows用的是c++.

6, 当然,第5点说的不是绝对.首先说一个概念,软件复用,说的就是把功能实现相同的封装起来,下次用到时直接调用. 这样就形成了各种各样的功能库,如c和c++的标准库.在c++和c编程中,对了库可以相互调用.故说,第5点的说法只是一个概说.

7,所以计算机的所有功能,都可以通过c和c++来实现.
但在网络应用层面,网站等等,大多数是用java,php,c#以及相关脚本来实现,是因为对开发实现的需求.快速,高效实现.
但是,如ie是用c/c++编写的,qq也是c/c++编写的.还有其它许多网络软件,如防火墙,杀毒软件等等也是.

--------------------------------------------
C和C++语言是不是只能写引擎之类的核心东西?而这些核心东西的概念和写法谁能大概粗略地说一下?
所以,上面的问题不是问题了,重要的是看要写的东西对运行效率,开发效率的要求.例如,完全可以用c语言和网络协议库来写一个程序,专门读取和显示你发问题的这个页面http://zhidao.baidu.com/question/33478242.html.但是这样做没多大意思,工程量太大,没有通用性和扩展性.

-----------------------------------------------------
至于,界面.下面也说说

1,在早期,没有显示器的,只能能过电路开关,打孔机和打字机来显示计算机信息.

2,接着出了显示屏,这显示是黑屏拆字的.这是开始.

3,计算机图形学先驱的研究,开始了计算机图形学的领域.

4,最终研究成果,开发出各种各样的图形库,如openGL等等.当然,这只是软件层面的,在硬件层面还有很多相关的支持,如显卡等等.

5,要开发GUI程序,直接调用相关库的组件就行.
-------------------------------------------------------

that's all.
原创by gelosie.
温馨提示:内容为网友见解,仅供参考
第1个回答  2023-04-26
c++和c语言的区别:1、关键字蓝色标注为C语言关键字,C++继承了C语言的所有关键字,以下红色标注为C++中含有但C语言没有的关键字(根据c++98中提出C++包含63个关键字)。2、源文件区别C语言文件后缀为c,c++原文件名后缀为.cpp。如果在创建源文件时什么都不给,默认是.cpp。3、返回值不同C语言中,如果一个函数没有指定返回值类型,默认为int类型,并返回一个随机数,一般为0XCCCCCCCC。在C++中,如果函数没有返回值则必须指定为void型,否则编译不能通过。4、参数列表在C语言中,函数没有指定的参数列表时,默认可接收任意多个参数。在C++中,有严格的参数类型检测,没有参数列表的函数,默认为void,不接收任何参数。5、C++支持函数重载,C语言不支持在实际开发中,有时候我们需要实现几个功能类似的函数,只是有些细节不同。
例如希望交换两个变量的值,这两个变量有多种类型,可以是int、float、char、bool等,我们需要通过参数把变量的地址传入函数内部。
在C语言中,程序员往往需要分别设计出三个不同名的函数,其函数原型与下面类似:
void swap1(int*a,int*b);//交换int变量的值。void swap2(float*a,float*b);//交换float变量的值。void swap3(char*a,char*b);//交换char变量的值。void swap4(bool*a,bool*b);//交换bool变量的值。但在C++中,这完全没有必要。C++允许多个函数拥有相同的名字,只要它们的参数列表不同就可以,这就是函数的重载(Function Overloading)。借助重载,一个函数名可以有多种用途。6、指针和引用C语言中函数传参方式有两种:传值和传址。
以传值方式,在函数调用过程中会生成一份临时变量用形参代替,最终把实参的值传递给新分配的临时形参。它的优点是避免了函数调用的副作用,却无法改变形参的值。如果要改变实参的值,只能通过指针传递。指针可以解决问题,但是不安全,因此在C++中引入了引用。7、命名空间在C++中,变量、函数和类都是大量存在的,这些变量、函数和类的名称将都存在于全局命名空间中,会导致很多冲突,使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突或者名字污染,namespace关键字的出现就是解决这种问题。而C语言中没有。
8、输入与输出
cout代表c++的输出流。
cin代表c++的输入流。
它们都是在头文件“iostream”中定义。
“cout”必须与”<<”一起使用,“<<”起到插入的作用。
在一条语句中可以多次使用“<<”输出多个数据。
第2个回答  2007-08-18
写程序代码跟程序不同的地方,就是在于:程序代码是一种表意,而不是可运行的东西。需要经过编译后生成机器代码。

而平时看到的程序都是编译好的机器代码,运行的时候就直接向操作系统或者硬件发送指令了。然后一些二进制的指令被硬件接收,并返回结果。

程序和计算机对接,可以经过操作系统,也可以不经过操作系统(操作系统调用程序),而操作系统其实也是一个程序,是直接凌驾在硬件之上,提供用户以及其他程序接口的程序。

和操作系统对接的程序,编译后运行时,会向操作系统发送指令(API函数),操作系统再分析处理,向机器硬件发送相应的指令(机器代码)。

和硬件直接对接的程序表现在各种硬件的驱动上,它直接控制硬件,提供给操作系统以及其他程序以接口,其他程序发送过来的标准指令,它给转化后发送给硬件。这种调用,也可能是操作系统和驱动互相调用。

任何一种语言笼统的说,是什么都可以写的。你可以用汇编语言写图形界面的游戏,例如魔兽争霸,但是相对来说会复杂很多。

一种语言开始设计的时候,就有它基本的目的。而且语言从汇编语言向高级语言发展,是通过牺牲程序的运行效率实现程序易于编制和维护的。

例如C语言,它主要基于函数,初衷就是使编程便于理解,脱离开机器代码。

C++则是面向对象,更注重了程序的结构性,添加了类、对象以及方法等等。相对来说,比C语言向上了一层,使编写和理解更简单。

但C语言也能够实现C++完成的功能,但是相对复杂的多,即使汇编语言也可以,但是会更复杂。

任何一种编程语言都有它的针对性,如果实现一些基本功能,并且追求速度,最好就是使用C语言,其次C++等。

如果追求图形界面,最好使用VC,VB,Delphi

如果追求程序的可移植,任何系统都可以运行,你就用JAVA。

但是对于功能的实现来说,越是低级的语言,能够实现的功能越强大,但是书写的复杂度也更大。高级语言只能使用给定的函数功能尽兴操作,但是程序代码会非常简单。
第3个回答  2007-08-18
C/C++是一种语言,相应地有利用C/C++语言编程的开发环境。
比如Borland公司的C++ BUILDER开发环境,还有VC++等等 。
他们可以用于B/S、C/S模式编程。
并不单单只是写引擎之类的,比如JAVA这门语言就是用C++写出来的。。

C语言是编程语言的祖宗。
第4个回答  2023-05-02
简单说,软件开发可以简单分为几层层:直接操作硬件(驱动层)→操作系统→应用软件。 驱动层:操作硬件,比如说,打开LED灯,点亮屏幕等;一般用汇编语言、C语言编写; 操作系统:我们用的比较多的windows系统、Linux系统、安卓系统、Unix系统等
相似回答