目錄
前言
一、C語言簡(jiǎn)單介紹、特點(diǎn)、基本構(gòu)成
簡(jiǎn)單介紹:
特點(diǎn):
基本構(gòu)成:
二、認(rèn)識(shí)C語言程序
標(biāo)準(zhǔn)格式:
簡(jiǎn)單C程序:
三、基本構(gòu)成分類詳細(xì)介紹? ?
(1)關(guān)鍵字
(2)數(shù)據(jù)類型
計(jì)算機(jī)中常用存儲(chǔ)單位
數(shù)據(jù)類型的取值范圍
打印輸入類型
(3)常量和變量
常量的分類:
對(duì)各種常量代碼的演示:
變量的分類:
定義變量的方法如下:
總結(jié)
前言
? ?本篇文章將詳細(xì)地介紹C語言入門基礎(chǔ)。
一、C語言簡(jiǎn)單介紹、特點(diǎn)、基本構(gòu)成
簡(jiǎn)單介紹:
C語言是一門面向過程的、抽象化的通用程序設(shè)計(jì)語言,廣泛應(yīng)用于底層開發(fā)。C語言能以簡(jiǎn)易的方式編譯、處理低級(jí)存儲(chǔ)器。C語言是僅產(chǎn)生少量的機(jī)器語言以及不需要任何運(yùn)行環(huán)境支持便能運(yùn)行的高效率程序設(shè)計(jì)語言。
特點(diǎn):
(1)簡(jiǎn)潔的語言
(2)具有結(jié)構(gòu)化的控制語句
(3)豐富的數(shù)據(jù)類型
(4)豐富的運(yùn)算符
(5)可對(duì)物理地址進(jìn)行直接操作
(6)代碼具有較好的可移植性
(7)可生成高質(zhì)量、目標(biāo)代碼執(zhí)行效率高的程序
基本構(gòu)成:
-
關(guān)鍵字(Keywords):C語言中有一些被固定為特定用途的單詞,稱為關(guān)鍵字。這些關(guān)鍵字在語法中有特殊含義,不能用作標(biāo)識(shí)符(變量名、函數(shù)名等)。例如,int、if、for等都是C語言的關(guān)鍵字。??
-
標(biāo)識(shí)符(Identifiers):標(biāo)識(shí)符是由字母、數(shù)字和下劃線組成的字符序列,用來表示變量、函數(shù)、結(jié)構(gòu)體等。標(biāo)識(shí)符需要滿足一定的命名規(guī)則,如以字母或下劃線開頭,不能使用關(guān)鍵字作為標(biāo)識(shí)符。
-
數(shù)據(jù)類型(Data Types):C語言支持多種數(shù)據(jù)類型,包括基本數(shù)據(jù)類型和派生數(shù)據(jù)類型?;緮?shù)據(jù)類型包括整型(int)、浮點(diǎn)型(float、double)、字符型(char)等,派生數(shù)據(jù)類型包括數(shù)組、結(jié)構(gòu)體、枚舉等。
-
變量(Variables):變量是用來存儲(chǔ)和表示數(shù)據(jù)的內(nèi)存位置,需要在使用之前進(jìn)行聲明。聲明變量時(shí)需要指定其數(shù)據(jù)類型和變量名,以便編譯器為其分配內(nèi)存空間。
-
運(yùn)算符(Operators):C語言提供了豐富的運(yùn)算符,用來進(jìn)行各種數(shù)學(xué)和邏輯運(yùn)算。常見的運(yùn)算符包括算術(shù)運(yùn)算符(+、-、*、/等)、關(guān)系運(yùn)算符(<、>、==等)、邏輯運(yùn)算符(&&、||等)等。
-
控制結(jié)構(gòu)(Control Structures):C語言提供了多種控制結(jié)構(gòu),用于控制程序的執(zhí)行流程。常見的控制結(jié)構(gòu)包括條件語句(if-else)、循環(huán)語句(for、while、do-while)和跳轉(zhuǎn)語句(break、continue、return等)。
-
函數(shù)(Functions):C語言以函數(shù)為基本的程序組織單元。函數(shù)是一段獨(dú)立的代碼塊,用來完成特定的任務(wù)。C語言提供了函數(shù)庫,包含了大量常用的函數(shù),也可以自定義函數(shù)來實(shí)現(xiàn)特定功能。
-
數(shù)組(Arrays):數(shù)組是一種存儲(chǔ)相同類型數(shù)據(jù)的連續(xù)內(nèi)存空間。通過下標(biāo)可以訪問數(shù)組中的元素。C語言中的數(shù)組下標(biāo)從0開始。
-
指針(Pointers):指針是一種特殊的變量,用來存儲(chǔ)其他變量的內(nèi)存地址。通過指針可以間接訪問和修改變量的值,還可以動(dòng)態(tài)分配內(nèi)存空間。
-
結(jié)構(gòu)體(Structures):結(jié)構(gòu)體是一種自定義的數(shù)據(jù)類型,可以將不同類型的數(shù)據(jù)組合在一起,形成一個(gè)新的復(fù)合類型。結(jié)構(gòu)體的成員可以是不同的數(shù)據(jù)類型。
二、認(rèn)識(shí)C語言程序
標(biāo)準(zhǔn)格式:
#include <stdio.h> //引入頭文件
int main(void) //main函數(shù),程序的入口
{
return 0; //結(jié)束函數(shù),返回
}
簡(jiǎn)單C程序:
#include<stdio.h> //引入頭文件
int main(void) //main 函數(shù)是程序的入口,程序從main函數(shù)第一行開始執(zhí)行
{ //一個(gè)項(xiàng)目中main(主)函數(shù)有且只有一個(gè)
printf("hello world!\n");//printf 為輸出打印的庫函數(shù),庫函數(shù)的使用必須要包含一個(gè)頭文件
return 0; //結(jié)束函數(shù),返回
}
三、基本構(gòu)成分類詳細(xì)介紹 ? ?
(1)關(guān)鍵字
關(guān)鍵字 | 作用 |
---|---|
int?? | 聲明整型變量 |
double | 聲明雙精度變量 |
long? | 聲明長(zhǎng)整型變量 |
char | 聲明字符變量 |
float?? | 聲明浮點(diǎn)型變量 |
short? | 聲明短整形變量 |
signed | 聲明有符號(hào)類型變量 |
unsigned | 聲明無符號(hào)類型變量 |
struct | 聲明結(jié)構(gòu)體變量;結(jié)構(gòu)體所占內(nèi)存大小是其成員所占內(nèi)存之和 |
enum | 聲明枚舉類型變量 |
union | 聲明聯(lián)合數(shù)據(jù)類型變量 |
static | 聲明靜態(tài)變量;最名不符實(shí)的關(guān)鍵字 |
switch? | 用于開關(guān)變量 |
case | 用于語句分支 |
default? | 開關(guān)語句中的其他分支 |
break | 跳出當(dāng)前循環(huán);表示終止本層循環(huán) |
continue | 結(jié)束當(dāng)前循環(huán),開始下一輪循環(huán) |
register | 聲明寄存器變量;最快的關(guān)鍵字 |
const | 聲明只讀變量,其修飾的只讀變量必須在定義的同時(shí)初始化 |
volatile | 說明變量在出現(xiàn)執(zhí)行中可被隱含地改變 ;最易變的關(guān)鍵字 |
typedef? | 用以給數(shù)據(jù)類型取名 |
extern | 聲明變量是在其他文件中聲明;最會(huì)帶帽子的關(guān)鍵字 |
return | 子程序返回語句,用來終止一個(gè)函數(shù)并返回后面跟著的值 |
void | 聲明函數(shù)無返回值或者無參數(shù),聲明空類型指針 |
do | 循環(huán)語句的循環(huán)體 |
while? | 循環(huán)語句的循環(huán)條件 |
for | 一種循環(huán)語句 |
if? | 條件語句 |
else | 條件語句否定分支 |
goto | ?無條件跳轉(zhuǎn)語句 |
sizeof? | 計(jì)算對(duì)象所占內(nèi)存空間大小 |
auto | 聲明自動(dòng)變量,缺省時(shí)編譯器一般默認(rèn)為auto;最寬宏大量的關(guān)鍵字 |
(2)數(shù)據(jù)類型
數(shù)據(jù)類型大?。?/p>
單位 | 說明 |
---|---|
位(Bit) | 最小的存儲(chǔ)單元,只能存儲(chǔ)0或1。 |
字節(jié)(Byte) | 由8個(gè)位組成,是計(jì)算機(jī)中最基本的存儲(chǔ)單位。 |
千字節(jié)(KB) | 約等于1024字節(jié)。 |
兆字節(jié)(MB) | 約等于1024千字節(jié)。 |
吉字節(jié)(GB) | 約等于1024兆字節(jié)。 |
特字節(jié)(TB) | 約等于1024吉字節(jié)。 |
求出他們的數(shù)據(jù)類型大小,我們需要用到C語言中的一個(gè)函數(shù)sizeof,這個(gè)函數(shù)的作用是可以求出?個(gè)對(duì)象(數(shù)據(jù)類型或者數(shù)據(jù)對(duì)象)的長(zhǎng)度(即占?內(nèi)存的??,以byte為單位)。注意是以字節(jié)為單位。? ?
具體代碼如下:
#include <stdio.h>
int main()
{
printf("short:%d\n",sizeof(short));
printf("unsgned short:%d\n", sizeof(unsigned short));
printf("int:%d\n", sizeof(int));
printf("unsigned int:%d\n", sizeof(unsigned int));
printf("long:%d\n", sizeof(long));
printf("unsigned long:%d\n", sizeof(unsigned long));
printf("long long:%d\n", sizeof(long long));
printf("unsigned long long:%d\n", sizeof(unsigned long long));
printf("float:%d\n", sizeof(float));
printf("double:%d\n", sizeof(double));
printf("char:%d\n", sizeof(char));
return 0;
}
?
? ?
?? ?
?由運(yùn)行結(jié)果可知:
char類型的數(shù)據(jù)類型大小為1字節(jié)即8位。
short類型的數(shù)據(jù)類型大小為2字節(jié)即16位。
int類型、float類型的數(shù)據(jù)類型大小為4字節(jié)即32位。
long類型、long long類型、double類型的數(shù)據(jù)類型大小為8字節(jié)即64位。
注意,若整數(shù)數(shù)據(jù)類型前面加unsigned即為無符號(hào)整數(shù)數(shù)據(jù)類型,數(shù)據(jù)類型大小不變。
需要注意的是:long
在32位系統(tǒng)中占用4個(gè)字節(jié)(32位),而在64位系統(tǒng)中占用8個(gè)字節(jié)(64位)。因此,可以說unsigned long
的大小為4字節(jié)或8字節(jié),具體取決于編譯器和操作系統(tǒng)的規(guī)范。
數(shù)據(jù)類型 | 取值范圍 |
---|---|
char | -128 到 127 |
unsigned char | 0 到 255 |
short | -32,768 到 32,767 |
unsigned short | 0 到 65,535 |
int | -2,147,483,648 到 2,147,483,647 |
unsigned int | 0 到 4,294,967,295 |
long | -2,147,483,648 到 2,147,483,647 |
unsigned long | 0 到 4,294,967,295 |
long long | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 |
unsigned long long | 0 到 18,446,744,073,709,551,615 |
float | 精度約為6到7十進(jìn)制位 |
double | 精度約為15位十進(jìn)制數(shù) |
數(shù)據(jù)類型 | 打印類型 |
---|---|
short | %hd |
int | %d |
long | %ld |
long long | %lld |
float | %f |
doule | %lf |
char | %c |
(3)常量和變量
常量:
常量是指在程序中固定不變的數(shù)值或字符,它們的值在程序運(yùn)行過程中不能更改。常量可以分為字面常量和符號(hào)常量。
常量的分類:
-
字面常量:字面常量是指直接寫在代碼中的常量值。例如,整數(shù)常量10、浮點(diǎn)數(shù)常量3.14、字符常量'a'等都是字面常量。
-
符號(hào)常量:符號(hào)常量是使用
#define
或const
關(guān)鍵字定義的常量。它們?cè)诔绦蛑斜硎疽粋€(gè)固定的數(shù)值或字符串,并且可以在程序中多次使用。 -
枚舉常量:是指一組具有相同特性的常量集合,在C語言中通過使用
enum
關(guān)鍵字進(jìn)行定義。枚舉常量可以用于定義一組相關(guān)的常量,使程序更加清晰和易讀。每個(gè)枚舉常量都有一個(gè)唯一的名稱和與之對(duì)應(yīng)的值,默認(rèn)情況下從0開始遞增。我們可以自定義枚舉常量的值或順序。
對(duì)各種常量代碼的演示:
int main()
{
120;//字面常量
10;//字面常量
//const 修飾常變量
const int num = 10;//num是const修飾的常變量
//num的值不可被改變,但本質(zhì)還是一個(gè)變量
//#define的標(biāo)識(shí)符常量
#define MIN 100
printf(" = %d\n", MIN);
//枚舉常量
printf("%d\n", MALE);
printf("%d\n", FEMALE);
return 0;
}
變量:?
變量是在程序執(zhí)行過程中可以改變其值的一種標(biāo)識(shí)符。變量可以用來存儲(chǔ)和表示不同類型的數(shù)據(jù),包括整數(shù)、浮點(diǎn)數(shù)、字符、布爾值等。變量在使用前需要先聲明,并且可以通過賦值語句來改變其值。在C語言中,變量的聲明需要指定變量的類型和名稱。
變量的分類:
分為局部變量和全局變量。
它們的區(qū)別:
局部變量的作用域是變量所在的局部范圍,它的生命周期是進(jìn)入作用域生命周期開始,出作用域生命周期結(jié)束。
全局變量的作用域是整個(gè)工程,它的生命周期是整個(gè)程序的生命周期。
定義變量的方法如下:
int x; // 聲明一個(gè)整數(shù)類型的變量x
float pi = 3.14; // 聲明并初始化一個(gè)浮點(diǎn)數(shù)類型的變量pi
char ch = 'A'; // 聲明并初始化一個(gè)字符類型的變量ch
變量的命名需要符合一定的規(guī)則,包括以字母或下劃線開頭、由字母、數(shù)字和下劃線組成等。
變量和常量在程序中都具有一定的作用,常量用于表示固定的數(shù)值或字符串,而變量用于存儲(chǔ)和處理數(shù)據(jù)。在程序設(shè)計(jì)中,常量和變量的使用是非常重要的基礎(chǔ)概念。
總結(jié)
? ? ? ?本篇文章詳細(xì)地講了C語言的詳細(xì)入門基礎(chǔ)知識(shí),希望能夠幫到大家!
? ? ? 以后還會(huì)給大家展現(xiàn)更多關(guān)于C語言的其他重要的基礎(chǔ)知識(shí),感謝大家支持懶大王!文章來源:http://www.zghlxwxcb.cn/news/detail-716230.html
? ? ? 希望這篇博客能給各位朋友們帶來幫助,最后懶大王請(qǐng)來過的朋友們留下你們寶貴的三連以及關(guān)注,感謝你們!
?文章來源地址http://www.zghlxwxcb.cn/news/detail-716230.html
到了這里,關(guān)于初識(shí)C語言——詳細(xì)入門(系統(tǒng)性學(xué)習(xí)day4)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!