伙伴分享|如何快速開發一個AppCube標準頁面
949
2025-04-04
C 編程語言是在 1970 年代中期開發的,但它仍然被認為是所有編程語言之母。它支持多種功能,并且足夠強大,可以直接與硬件單元和內核進行交互。本 C 編程教程涉及,
Brief History of C Programming Language
Datatypes and Variables
First C Program
Loops in C Programming
Conditional Statements in C Programming
Data Structures in C Programming
Strings
Functions
Structure and Union
Important Interview Questions
C 編程語言簡史
C 由Dennis Ritchie于 1972 年在貝爾實驗室(美國)開發。它是一種通用的、結構化的、獨立于機器的、簡單且靈活的編程語言。它主要是作為一種系統編程語言開發的,用于編寫操作系統。
C編程語言的特點
高級語言
C在其庫和內置功能的情況下提供了強大的抽象,使其獨立于機器。足以開發內核、驅動等系統應用。
結構化語言
C 語言支持結構化編程,其中包括函數的使用。函數降低了代碼復雜度并且完全可以重用。
豐富的庫
與其前輩不同,C 語言結合了多個內置算術和邏輯函數以及許多內置庫,使開發更加快捷方便。
可擴展
C語言是高級語言,也可以升級。因此,編程語言被認為是可擴展的,就像任何其他高級語言一樣。
遞歸
C 語言支持涉及遞歸的函數回溯。在遞歸過程中,一個函數在另一個函數內被多次調用。
指針
C 使用戶能夠使用指針直接與內存交互。我們在內存、結構、函數、數組、堆棧等中使用指針。
Faster
C 語言帶有最少數量的庫和內置函數,這使得編譯和執行時間更少并且系統面臨低開銷。
內存管理
C 提供了同類中最好的內存管理。它可以動態分配和釋放內存。所述的malloc(),釋放calloc(),realloc()的函數用于分配動態內存和free()函數用于在任何時間釋放已使用的內存。
數據類型和變量
用C數據類型大致分為4類,如下所示。
基本數據類型
基本數據類型被認為是 C 必須提供的最基本和主要的數據類型。屬于基本數據類型的數據類型如下。
派生數據類型
由派生類型是通過使用一個或更多個基本形成類型組合使用。它們????是其功能在 C 庫中預定義的對象類型。
函數類型
指針類型
數組類型
結構類型
聯合類型
枚舉數據類型
枚舉數據類型用于在 C 編程語言中聲明整型常量,以便整型常量名稱易于記憶和維護。關鍵字enum用于聲明枚舉的數據類型。
示例:枚舉插頭{on = 1, off = 0};
空數據類型
void 數據類型是一種空數據類型,用作 C 中不返回值的函數的返回類型。
例子:
void??函數(int?n)
int 函數(void)
C 中的變量
變量定義為保留的內存空間,用于存儲確定數據類型的值。Variable 的值不是常數,而是允許更改。C中主要支持五種類型的變量。
局部變量
全局變量
靜態變量
自動變量
外部變量
局部變量
任何在代碼塊或函數內部聲明且作用域限于該特定代碼塊或函數的變量都稱為局部變量。
//例子
void Edureka() { int Local_variable=10; }
全局變量
任何在代碼塊或函數外部聲明并具有整個程序范圍并允許任何函數更改其值的變量稱為全局?變量。
//例子
int Global_variable=10; void Edureka() { int Local_variable=20; }
靜態變量
使用關鍵字static聲明的任何變量都稱為靜態變量。靜態變量在程序的整個執行過程中保留聲明的值,并且不會在多次函數調用之間改變。
//例子
void Edureka() { int Local_variable =10;// static int Static_variable =10; Local_variable=Local_variable+1; Static_variable =Static_variable+1; printf("%d,%d",x,y); }
自動變量
可以使用關鍵字auto聲明自動變量。默認情況下,所有用 C 語言聲明的變量都是自動變量。
//例子
void main() { int Local_variable=10; //(automatic default) auto int auto=20; //(automatic variable) };
外部變量
外部變量使用extern關鍵字聲明。我們可以通過使用外部變量在多個 C 源文件中共享一個變量。
//例子
extern external=10;
讓我們執行我們的第一個 C 程序。
第一個 C 程序
在本 C 編程教程中,我們將了解C 程序的基本結構。任何基本的 C 程序都包含以下部分
預處理器指令
預處理器指令在每個 C 程序的開頭用特殊字符# 聲明。它們被定義為在編譯過程中由 C 編譯器調用和編譯的預定義函數或宏程序。
函數
C程序中的函數被定義為主程序的細分程序。函數提供代碼可重用性并降低代碼復雜性。
變量
變量?被定義為一個名稱,用于在 C 程序中存儲值。C?中使用的每個?變量都有一個特定的數據類型,它決定了?變量?內存的大小和布局。
語句和表達式
語句只不過是我們提供給計算機進行編譯的指令,而另一方面,表達式被認為是產生結果值的數學或邏輯語句。
注釋
注釋是開發人員在代碼中編寫的消息,用于方便理解編程時使用的代碼的邏輯。編譯器不會編譯注釋。注釋寫在?//或/* */ 中。
現在讓我們執行我們的第一個 Hello World 程序。
#include
//輸出
Hello World
C 編程中的循環
C 中的循環被定義為一種編程語句,旨在執行特定代碼段特定次數或直到滿足提供的特定條件。C 語言中主要有三循環語句。
For 循環
for循環在?C程序是一個控制流語句,它允許你執行特定代碼段,用于有限數量的迭代。for 循環具有三個參數,即?初始化變量、計數器變量?和?增量/減量變量。
for循環的流程圖如下:
//例子
#include
//輸出
1
2
3
4
5
While 循環
While循環在?C程序設計是重復執行本身,直到給出控逆變現金流量表布爾條件被滿足。While 循環可以被認為是一個重復的 If 語句。
for循環的流程圖如下:
//例子
#include
//輸出
1 2 3 4 5
Do-While 循環
C 編程中的Do While 循環被認為是與普通 While 循環完全相似的條件語句。唯一的區別是 Do While 循環將布爾/條件語句放在循環的末尾。這使得?Do While 循環至少執行一次。
for循環的流程圖如下:
//例子
#include
//輸出
Value of the variable j is: 0
Value of the variable j is: 1
Value of the variable j is: 2
Value of the variable j is: 3
Value of the variable j is: 4
Value of the variable j is: 5
C 編程中的條件語句
C語言中的條件語句可以定義為在指定的數學或邏輯條件下決定程序語句的執行流程的編程語句。本 C 編程教程中的重要條件語句如下。
如果
C 語言中的If 語句是一種編程條件語句,它根據條件執行代碼段,前提是它為真且有效。下面是if?條件的流程圖?。
//例子
#include
//輸出
Enter a number:4
your number is 4 and it is an even number
否則-如果
否則,如果條件語句在?C語言是用來執行一個語句了兩部。條件語句執行所提供的代碼段是真實有效的。下面是else-if?條件的流程圖。
//例子
#include
//輸出
Enter a number:5
your number is 5 and it is an odd number
else-if 梯子
否則,如果梯子在?C語言中設置的連續否則,如果這是用來語句執行一個真實有效的語句出給定語句的集合。下面是else-if 梯形條件的流程圖。
#include
//輸出
enter a number:5
your inputted number is not equal to 10, 50 or 100
嵌套如果
C 語言?中的Nested-If是一種條件語句,其中一個 Else-If 語句嵌入到另一個 If 語句中。下面是nested-if?條件的流程圖。
//例子
#include //輸出: Enter the value of First variable :12 Enter the value of Second variable :21 First variable is not equal to Second variable Second variable is greater than First variable C 編程中的數據結構 甲?數據結構?可被定義為集合?數據值,它們之間的關系,并且被上所施加的功能?數據。它們大致分類如下。 原始數據結構/內置數據結構 抽象數據結構/用戶定義的數據結構 數組 一個陣列?被定義為相似類型的存儲在連續的存儲單元的數據項的集合。數組是最簡單的數據結構,其中每個數據元素都可以使用其索引號隨機訪問。 共有三種不同類型的數組,即: 一維數組 二維數組 多維數組 一維數組 一維數組可以定義為單行多列的數組。一維數組中的元素使用它們的索引號訪問。 int arrayone[10]; 二維數組 二維數組可以定義為數組的數組。該2D陣列被組織成可表示為行和列的集合矩陣。使用它們的交點坐標訪問數組的元素。 int arraytwo[10][5]; 多維數組 多維數組可以定義為數組的數組。3D 數組被組織為 3D 矩陣,可以表示為多行和多列的集合。數組的元素使用它們的 3D 交叉坐標進行訪問。 int arraythree[10][10][10]; 鏈表 鏈表是類似于數組的線性數據結構,唯一的區別是元素不保存在連續的內存位置,而是保存在隨機地址中并使用指針連接。 單鏈表 雙向鏈表 循環鏈表 單鏈表 單向鏈表是一維數組的替代品。單向鏈表中的元素以順序格式存儲,但存儲在不同的存儲位置,通過指針相互連接。單向鏈表只能在一個方向上遍歷 單向鏈表的代碼可以在這里找到 雙向鏈表 雙向鏈表是二維數組的替代品。雙向鏈表中的元素以順序格式存儲,但存儲在不同的存儲位置,通過指針相互連接。雙向鏈表可以雙向遍歷。 雙向鏈表的代碼可以在這里找到 循環鏈表 循環鏈表類似于單鏈表。但是,唯一的區別是循環鏈表尾部的指針指向頭部。 循環鏈表的代碼可以在這里找到 文件 C 中的基本文件處理技術,提供用戶可以對系統中的文件執行的基本功能。 “r”——?搜索文件。如果文件成功打開,fopen?() 將其加載到內存中并設置一個指向其中第一個字符的指針。如果無法打開文件 fopen() 返回NULL。 “w”——?搜索文件。如果文件存在,則覆蓋其內容。如果該文件不存在,則會創建一個新文件。如果無法打開文件,則返回NULL。 “a” –?搜索文件。如果文件成功打開,則 fopen?() 將其加載到內存中并設置一個指向其中最后一個字符的指針。如果該文件不存在,則會創建一個新文件。如果無法打開文件,則返回NULL。 “?r+” –?搜索文件。如果成功打開 fopen?( ) 將其加載到內存中并設置一個指向其中第一個字符的指針。如果無法打開文件,則返回NULL。 “w+”——?搜索文件。如果文件存在,則覆蓋其內容。如果文件不存在,則創建一個新文件。如果無法打開文件,則返回NULL。 “a+” –?搜索文件。如果文件成功打開,則 fopen?() 將其加載到內存中并設置一個指向其中最后一個字符的指針。如果該文件不存在,則會創建一個新文件。如果無法打開文件,則返回NULL。 堆 堆棧是一種線性數據結構,它遵循執行操作的特定順序。順序可能是 LIFO(后進先出)或 FILO(先進后出)。 堆棧代碼可以在這里找到 隊列 甲隊列?是一個遵循在其中操作被執行的特定順序的線性結構。順序是先進先出 (FIFO)。此外,C 包括循環隊列。 隊列的代碼可以在這里找到 圖形 圖被定義為使用節點和邊以圖形格式表示的數據結構。有三種類型的圖形,即。 無向圖 有向圖 有向加權圖 C 語言中的圖通常以兩種格式表示,如下所示: 例如: 鄰接矩陣 鄰接表 字符串 該字符串被定義為以空字符結尾的一維字符數組。字符數組或字符串用于存儲單詞或句子等文本。數組中的每個字符占用一個字節的內存,最后一個字符必須始終為 0。 兩種類型的字符串是: 字符數組 字符串字面量 C語言中可用的String函數如下 //例子 #include //輸出 string length is = 7 函數 函數可以被定義為花括號中主程序的程序細分。主程序可以調用函數來實現其功能。此過程提供代碼可重用性和模塊化。 兩種類型的函數是: 庫函數 用戶定義函數 功能優勢 將避免在程序中重復編寫相同的代碼。 在一個程序中可以多次調用函數。 當 C 程序被分成多個函數時,可以輕松跟蹤它。 可重用性是 C 函數的主要成就。 使用函數應遵循的規則: 函數聲明 一個函數需要聲明為Global,并且需要明確指定函數的名稱、函數的參數和函數的返回類型。 函數調用 從程序中的任何位置調用函數時,應注意參數列表中的數據類型和參數列表中的元素數量是否匹配。 功能定義 函數聲明后,重要的是函數包括聲明的參數、代碼段和返回值。 C 編程中使用函數的四個方面 功能沒有參數和無返回值 功能沒有參數,并用返回值 功能與參數并沒有返回值 功能與參數,并與返回值 結構體與聯合體 結構 A S?tructure?是一個用戶定義的數據類型中可用的??,允許不同數據類型的數據項組合在一起。結構用于表示記錄。?struct是用于聲明結構的關鍵字。 //例子 #include //輸出 1st distance Enter feet: 12 Enter inch: 7.9 2nd distance Enter feet: 2 Enter inch: 9.8 Sum of distances = 15'-5.7" 聯合體 聯合體是在可用的一個特殊的數據類型??,允許在相同的存儲單元,存儲不同的數據類型。union是用于聲明 Union 的關鍵字。 //例子 #include //輸出 Enter Employee Id : 102191 Enter Employee Name : Karan Enter Employee Age : 29 Enter Employee Salary : 45000 Employee Id : 102011 Employee Name : Ajay Employee Age : 26 Employee Salary : 45000 結構體和聯合體的區別 重要的面試問題 Binary Search Bubble Sort Merge Sort Round Robin Scheduling Fibonacci Series Roots of Quadratic Equation LCM of two numbers 至此,我們結束了這篇“C 編程教程”文章。我希望您已經了解數據結構、語法、功能和使用它們執行的操作的重要性。 C 語言 Linux 數據結構
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。