1.概述
C語(yǔ)言能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器。
C語(yǔ)言是僅產(chǎn)生少量的機(jī)器語(yǔ)言以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的高效率程序設(shè)計(jì)語(yǔ)言。盡管C語(yǔ)言提供了許多低級(jí)處理的功能,但仍然保持著跨平臺(tái)的特性,以一個(gè)標(biāo)準(zhǔn)規(guī)格寫出的C語(yǔ)言程序可在包括一些類似嵌入式處理器以及超級(jí)計(jì)算機(jī)等作業(yè)平臺(tái)的許多計(jì)算機(jī)平臺(tái)上進(jìn)行編譯。
馮·諾依曼在1945年提出了現(xiàn)代計(jì)算機(jī)的若干思想,被后人稱為馮·諾依曼思想,這是計(jì)算機(jī)發(fā)展史上的里程碑。自1945 年至今大多采用其結(jié)構(gòu),因此馮.諾依曼被稱為計(jì)算機(jī)之父。他的體系結(jié)構(gòu)計(jì)算機(jī)由運(yùn)算器、控制器、存儲(chǔ)器、輸入設(shè)備、輸出設(shè)備五大部件構(gòu)成。C語(yǔ)言擁有一套完整的理論體系經(jīng)過了漫長(zhǎng)的發(fā)展歷史,在編程語(yǔ)言中具有舉足輕重的地位。
C語(yǔ)言誕生于美國(guó)的貝爾實(shí)驗(yàn)室,由 D.M.Ritchie 以B語(yǔ)言為基礎(chǔ)發(fā)展而來,在它的主體設(shè)計(jì)完成后,Thompson 和 Ritchie 用它完全重寫了UNIX,且隨著UNIX的發(fā)展,C語(yǔ)言也得到了不斷的完善。為了利于C語(yǔ)言的全面推廣,許多專家學(xué)者和硬件廠商聯(lián)合組成了C語(yǔ)言標(biāo)準(zhǔn)委員會(huì),并在之后的 1989 年,誕生了第一個(gè)完備的C標(biāo)準(zhǔn),簡(jiǎn)稱“ C89”,也就是“ ANSI C”。
到目前為止,C語(yǔ)言標(biāo)準(zhǔn)委員會(huì)修訂發(fā)布了3個(gè)標(biāo)準(zhǔn): C89(C90)、 C99、 C11、C17。
C17 是 ISO/IEC 9899:2018 標(biāo)準(zhǔn),于 2018 年發(fā)布。
C17 標(biāo)準(zhǔn)在 C11 基礎(chǔ)上進(jìn)行了一些小的修訂和更新,主要是對(duì)標(biāo)準(zhǔn)庫(kù)進(jìn)行了一些改進(jìn)和擴(kuò)展。C17 標(biāo)準(zhǔn)對(duì)于C語(yǔ)言本身的特性并沒有做出太大的改變,主要是對(duì)于一些庫(kù)函數(shù)進(jìn)行了更新和擴(kuò)展。C17 標(biāo)準(zhǔn)目前還比較新,尚未得到廣泛的應(yīng)用。
2.C語(yǔ)言現(xiàn)狀
(1).C語(yǔ)言是操作系統(tǒng)內(nèi)核開發(fā)領(lǐng)域幾乎是唯一開發(fā)工具, 大部分操作系統(tǒng)是由C加上少量匯編語(yǔ)言開發(fā)的;比如:Linux、Windows、Vxworks、Unix。
(2).在嵌入式領(lǐng)域占有絕對(duì)優(yōu)勢(shì)。
(3).在網(wǎng)絡(luò)服務(wù)器類相當(dāng)大優(yōu)勢(shì) Apache、 Oracle。
(4).GUI 應(yīng)用領(lǐng)域、大型商用程序采用 C 的較多 。 比如: Offices, SPSS, AutoCAD。
(5).大規(guī)模、高性能計(jì)算、游戲開發(fā)以及一些傳統(tǒng)的客戶端軟件和構(gòu)件。
總之,C語(yǔ)言有這自身獨(dú)特的優(yōu)勢(shì),盡管現(xiàn)今開發(fā)語(yǔ)言眾多,但C語(yǔ)言的高效性還是有著自身的獨(dú)特性。在AI人工智能中對(duì)C語(yǔ)言現(xiàn)狀的查詢的查詢?nèi)缦拢?/p>
3.C語(yǔ)言數(shù)據(jù)類型
在C語(yǔ)言中,數(shù)據(jù)類型指的是用于聲明不同類型的變量或函數(shù)的一個(gè)約束。變量的類型決定了變量存儲(chǔ)占用的空間。
序號(hào) |
類型與描述 |
1 |
基本類型:算數(shù)類型,包括整數(shù)類型和浮點(diǎn)類型 |
2 |
枚舉類型:算數(shù)類型,用來定義固定的整數(shù)值變量 |
3 |
void類型:類型說明符void表示沒有可用的值。 |
4 |
派生類型:包括指針類型、數(shù)組類型、結(jié)構(gòu)體類型、共用體類型和函數(shù)類型。 |
4.基本類型
C語(yǔ)言中基本數(shù)據(jù)類型有:字符符型(char)、短整型(short)、整型(int)、長(zhǎng)整型(long)、浮點(diǎn)型(float)、雙精度浮點(diǎn)型(double)。使用sizeof計(jì)算數(shù)據(jù)類型占用空間大小。
數(shù)量類型 |
占用空間 |
定義和輸出方式 |
取值范圍 |
字符型(char) |
1個(gè)字節(jié) |
%c或者%hhd |
CHAR_MIN、CHAR_MAX |
短整型(short) |
2個(gè)字節(jié) |
%hd |
SHRT_MIN、SHRT_MAX |
整型(int) |
4個(gè)字節(jié) |
%d |
INT_MIN、INT_MAX |
長(zhǎng)整型(long) |
8個(gè)字節(jié) |
%ld |
LONG_MIN、LONG_MAX |
浮點(diǎn)型(float) |
4個(gè)字節(jié) |
%f |
FLT_MIN、FLT_MAX |
雙精度浮點(diǎn)型(double) |
8個(gè)字節(jié) |
%lf |
DBL_MIN、DBL_MAX |
注意:再輸出取值范圍時(shí),上述宏在limits.h和float.h中定義。
FLT_MIN、DBL_MIN表示的是正數(shù)最小值;FLT_MAX、DBL_MAX表示正數(shù)最大值。
5.進(jìn)制輸出
C語(yǔ)言中有二進(jìn)制、八進(jìn)制、十進(jìn)制、十六進(jìn)制。其中八進(jìn)制、十進(jìn)制、十六進(jìn)制可以直接出。
進(jìn)制 | 定義及輸出格式 |
二進(jìn)制 | int a=0b1011;無(wú)直接輸出方式 |
八進(jìn)制 | int a=012; “%#o”輸出 |
十進(jìn)制 | int a=12; “%d”輸出 |
十六進(jìn)制 | int a=0x12; “%#x”輸出 |
%#x --格式化打印自動(dòng)添加格式前綴。
示例1:
#include
int main()
{
int a=10;//10進(jìn)制
printf("八進(jìn)制:%#on",a);//八進(jìn)制輸出
printf("十進(jìn)制:%dn",a);//十進(jìn)制輸出
printf("十六進(jìn)制:%#xn",a);//十六進(jìn)制輸出
int b=0b1011;//二進(jìn)制,十進(jìn)制為11
int c=023;//八進(jìn)制,十進(jìn)制為19
int d=0x12;//十六進(jìn)制,十進(jìn)制為18
printf("b=%d,c=%d,d=%dn",b,c,d);
}
[wbyq@wbyq 1227]$ gcc main.c
[wbyq@wbyq 1227]$ ./a.out
八進(jìn)制:012
十進(jìn)制:10
十六進(jìn)制:0xa
b=11,c=19,d=18
-
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7494瀏覽量
87946 -
C語(yǔ)言
+關(guān)注
關(guān)注
180文章
7604瀏覽量
136809 -
UNIX
+關(guān)注
關(guān)注
0文章
296瀏覽量
41490 -
編程語(yǔ)言
+關(guān)注
關(guān)注
10文章
1945瀏覽量
34735
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論