C語言:深度學習知識儲備

目錄

數據類型

?每種類型的大小是多少呢?

變量

變量的命名:

變量的分類:

變量的作用域和生命周期

作用域:

生命周期:

常量

字符串+轉義字符+注釋

字符串:

轉義字符

操作符:

算術操作符

移位操作符

位操作符

賦值操作符

單目操作符

關系操作符

邏輯操作符

條件操作符

?逗號表達式

?下標引用、函數調用和結構成員

常見關鍵字

指針變量的大小

結構體:

?需要熟悉掌握的ASCII碼表:

?以上就是個人學習見解和學習的解析,歡迎各位大佬在評論區探討!

感謝大佬們的一鍵三連!?感謝大佬們的一鍵三連!?感謝大佬們的一鍵三連!


數據類型

char? ? ? ? ? // 字符數據類型
short? ? ? ?? // 短整型
int? ? ? ? ? ?? // 整形
long? ? ? ? ? // 長整型
long long ? // 更長的整形
float? ? ? ? ? // 單精度浮點數
double? ? ? // 雙精度浮點數

?

?每種類型的大小是多少呢?

?注意:存在這么多的類型,其實是為了更加豐富的表達生活中的各種值。

變量

變量的命名:

只能由字母(包括大寫和小寫)、數字和下劃線( _ )組成。
不能以數字開頭。
長度不能超過63個字符。
變量名中區分大小寫的。
變量名不能使用關鍵字。

變量的分類:

??分為:局部變量全局變量。
#include <stdio.h>
int global = 2019;//全局變量
int main()
{int local = 2018;//局部變量//下面定義的global會不會有問題?int global = 2020;//局部變量printf("global = %d\n", global);return 0;
}
總結:
上面的局部變量global變量的定義其實沒有什么問題的!
當局部變量和全局變量同名的時候,局部變量優先使用。

變量的作用域和生命周期

作用域:

???????? 作用域(scope)是程序設計概念,通常來說,一段程序代碼中所用到的名字并不總是有效/可用的而限定這個名字的可用性的代碼范圍就是這個名字的作用域。
1. 局部變量的作用域是變量所在的局部范圍。
2. 全局變量的作用域是整個工程。

生命周期:

?????? ??變量的生命周期指的是變量的創建到變量的銷毀之間的一個時間段。
1. 局部變量的生命周期是:進入作用域生命周期開始,出作用域生命周期結束。
2. 全局變量的生命周期是:整個程序的生命周期。

常量

C 語言中的常量和變量的定義的形式有所差異。
C 語言中的常量分為以下以下幾種:
1、字面常量
2、const 修飾的常變量
3、#define 定義的標識符常量
4、枚舉常量
#include <stdio.h>
//舉例
enum Sex
{
MALE,
FEMALE,
SECRET
};
//括號中的MALE,FEMALE,SECRET是枚舉常量
int main()
{//字面常量演示3.14;//字面常量1000;//字面常量//const 修飾的常變量const float pai = 3.14f; ? //這里的pai是const修飾的常變量pai = 5.14;//是不能直接修改的!//#define的標識符常量 演示
#define MAX 100printf("max = %d\n", MAX);//枚舉常量演示printf("%d\n", MALE);? ? //0printf("%d\n", FEMALE);? //1printf("%d\n", SECRET);? //2//注:枚舉常量的默認是從0開始,依次向下遞增1的return 0;
}

字符串+轉義字符+注釋

字符串:

這種由雙引號( Double Quote )引起來的一串字符稱為字符串字面值( String Literal ),或者簡稱字符串。
注:字符串的結束標志是一個 \0 的轉義字符。在計算字符串長度的時候 \0 是結束標志,不算作字符串內容。
#include <stdio.h>
// 下面代碼,打印結果是什么?為什么?(突出 '\0' 的重要性)
int main ()
{
char arr1 [] = "hello" ;
char arr2 [] = { 'h' , 'e' , 'l' , 'l' , 'o' };// 沒有結束標志‘\0’發生數組越界
char arr3 [] = { 'h' , 'e' , 'l' , 'l' , 'o' ,? '\0' };
printf ( "%s\n" , arr1 );
printf ( "%s\n" , arr2 );
printf ( "%s\n" , arr3 );
return 0 ;
}

轉義字符:

轉義字符
釋義
\?
在書寫連續多個問號時使用,防止他們被解析成三字母詞。
\'
用于表示字符常量 '。
\“
用于表示一個字符串內部的雙引號。
\\
用于表示一個反斜杠,防止它被解釋為一個轉義序列符。
\a
警告字符,蜂鳴
\b
退格符
\f
進紙符(換頁)
\n
換行
\r
回車
\t
水平制表符
\v
垂直制表符
\ddd
ddd表示1~3個八進制的數字。 如: \130 表示字符X
\xdd
dd表示2個十六進制數字。 如: \x30 表示字符0

操作符:

算術操作符

+? ? -? ? *? ? /? ? %

移位操作符(二進制)

>>(右移)? ?? <<(左移)

位操作符(二進制)

&(按位與)? ?? ^(按位異或)? ?? |(按位或)
按位與:二進制同時為‘ 1 ’,否則都是‘ 0 ’;
按位異或:二進制相同為‘ 0 ’,不相同為‘ 1 ’;
按位或:二進制有‘ 1 ’為‘ 1 ’。

賦值操作符

=?? +=? ? -=? ? *=? ? /=? ? &=? ? ^ =? ? ? |=??? >>= ? <<=

單目操作符

! ? ? ? ? ? 邏輯反操作
- ? ? ? ? ? 負值
+ ? ? ? ? ? 正值
& ? ? ? ? ? 取地址
sizeof ? ? ? 操作數的類型長度(以字節為單位)
~ ? ? ? ? ? 對一個數的二進制按位取反
-- ? ? ? ? ? 前置、后置 --
++ ? ? ? ? ? 前置、后置 ++
* ? ? ? ? ? 間接訪問操作符 ( 解引用操作符 )
( 類型 ) ? ? ? 強制類型轉換

關系操作符

>
>=
<
<=
!=? ? ? ?? 用于測試 不相等
== ? ? ? 用于測試 相等

邏輯操作符

&&? ? ? ? 邏輯與
|| ? ? ? ? ? 邏輯或

條件操作符

exp1 ? exp2 : exp3

?逗號表達式

exp1 , exp2 , exp3 , …expN

?下標引用、函數調用和結構成員

[ ]? ? ( )? ? ?. (結構體成員訪問)? ? ??-> (結構體指針訪問)

常見關鍵字

auto ? break ? case ? char ? const ? continue ? default ? do ? double else ? enum ?
extern float ? for ? goto ? if ? int ? long ? register ? ? return ? short ? signed
sizeof ? static struct ? switch ? typedef union ? unsigned ? void ? volatile ? while
關鍵字: static
static是用來修飾變量和函數的
1. 修飾局部變量-稱為靜態局部變量
2. 修飾全局變量-稱為靜態全局變量
3. 修飾函數-稱為靜態函數
特殊情況:
1、一個全局變量被static修飾,使得這個全局變量只能在本源文件內使用,不能在其他源文件內使用。
2、一個函數被static修飾,使得這個函數只能在本源文件內使用,不能在其他源文件內使用。

指針變量的大小

結構體:

結構體使得 C 語言有能力描述復雜類型。
比如描述學生,學生包含: 名字+年齡+性別+學號 這幾項信息。
這里只能使用結構體來描述了。
例如:
struct Stu
{
char name [ 20 ]; // 名字
int age ;? ? ? ? ? ?? // 年齡
char sex [ 5 ];? ? ? // 性別
char id [ 15 ] ;? ? // 學號
};

?需要熟悉掌握的ASCII碼表:

?以上就是個人學習見解和學習的解析,歡迎各位大佬在評論區探討!

感謝大佬們的一鍵三連!?感謝大佬們的一鍵三連!?感謝大佬們的一鍵三連!

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/news/43687.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/43687.shtml
英文地址,請注明出處:http://en.pswp.cn/news/43687.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

圖神經網絡 day2 圖的分類

圖神經網絡基礎算法 1 GCN2 GraphSAGE2.1 采樣&#xff1a;采樣固定長度的鄰居2.2 聚合2.3 GraphSAGE_minibatch2.4 GraphSAGE_embedding 3 GAT4. 圖網絡的分類4.1 遞歸圖神經網絡 RGNN4.2 圖卷積神經網絡GCN4.3 圖注意力網絡 GAT4.4 圖自動編碼 GAE4.5 圖時空網絡 GSTN4.6 圖生…

typeScript 接口和類

工具&#xff1a; PlayGround 接口 接口用來定義對象的結構和類型&#xff0c;描述對象應該具有哪些屬性和方法。 它僅用于聲明&#xff0c;而不是實現&#xff1b; 這對于編寫可重用的代碼非常有用。它可用于&#xff1a; 關鍵字是interface&#xff0c; 注意&#xff1a;它…

OSPF在廣播類型的網絡拓撲中DR和BDR的選舉

指定路由器&#xff08;DR&#xff09;&#xff1a; 一個網段上的其他路由器都和指定路由器&#xff08;DR&#xff09;構成鄰接關系&#xff0c;而不是它們互相之間構成鄰接關系。 備份指定路由器&#xff08;BDR&#xff09;&#xff1a; 當DR出現問題&#xff0c;由BDR接…

redis事務對比Lua腳本區別是什么

redis官方對于lua腳本的解釋&#xff1a;Redis使用同一個Lua解釋器來執行所有命令&#xff0c;同時&#xff0c;Redis保證以一種原子性的方式來執行腳本&#xff1a;當lua腳本在執行的時候&#xff0c;不會有其他腳本和命令同時執行&#xff0c;這種語義類似于 MULTI/EXEC。從別…

中間件: Kafka安裝部署

單機部署 下載二進制包 cd /opt/soft/archive wget http://archive.apache.org/dist/kafka/3.2.0/kafka_2.12-3.2.0.tgz tar -zxf kafka_2.12-3.2.0.tgz -C ../ cd ../kafka_2.12-3.2.0修改配置 vim config/server.propertiesadvertised.listenersPLAINTEXT://39.105.11.50:…

C++系列-函數重載

C系列-函數重載 函數重載函數重載的條件函數重載注意事項引用作為重載函數重載遇到默認參數 函數重載 函數名可以相同&#xff0c; 提高復用性 函數重載的條件 同一個作用域下函數名相同函數參數不同 – 參數個數不同 – 參數順序不同 – 參數類型不同不可以使用返回值作為重…

UI和API自動化測試的失敗原因

一、UI自動化失敗原因&#xff1a; 界面發生了變化&#xff0c;但是腳本沒有更新腳本中的等待時間太短了&#xff0c;導致元素還沒出來就被判定為失敗了網絡因素&#xff0c;網絡如果太慢的話&#xff0c;界面元素的顯示就會滯后執行的時候突然彈出一個窗口影響了元素的定位Ag…

Python web實戰之Django 的跨站點請求偽造(CSRF)保護詳解

關鍵詞&#xff1a;Python、Web、Django、跨站請求偽造、CSRF 大家好&#xff0c;今天我將分享web關于安全的話題&#xff1a;Django 的跨站點請求偽造&#xff08;CSRF&#xff09;保護&#xff0c;介紹 CSRF 的概念、原理和保護方法. 1. CSRF 是什么&#xff1f; CSRF&#…

微服務與Nacos概述-6

RBAC 模型 RBAC 基于角色的訪問控制是實施面向企業安全策略的一種有效的訪問控制方式。 基本思想是&#xff0c;對系統操作的各種權限不是直接授予具體的用戶&#xff0c;而是在用戶集合與權限集合之間建立一個角色集合。每一種角色對應一組相應的權限。一旦用戶被分配了適當…

【MySQL】MySQL基礎知識詳解(一)

MySQL select列的別名去除重復行空值參與運算著重號查詢常數顯示表結構過濾數據 排序使用 ORDER BY 對查詢到的數據進行排序操作。使用列的別名&#xff0c;進行排序二級排序 分頁LIMIT 分頁顯示公式&#xff1a;&#xff08;當前頁數減一&#xff09;*每頁條數&#xff0c;每頁…

【AIGC】 快速體驗Stable Diffusion

快速體驗Stable Diffusion 引言一、安裝二、簡單使用2.1 一句話文生圖2.2 詳細文生圖 三、進階使用 引言 stable Diffusion是一款高性能的AI繪畫生成工具&#xff0c;相比之前的AI繪畫工具&#xff0c;它生成的圖像質量更高、運行速度更快&#xff0c;是AI圖像生成領域的里程碑…

【100天精通python】Day41:python網絡爬蟲開發_爬蟲基礎入門

目錄 專欄導讀 1網絡爬蟲概述 1.1 工作原理 1.2 應用場景 1.3 爬蟲策略 1.4 爬蟲的挑戰 2 網絡爬蟲開發 2.1 通用的網絡爬蟲基本流程 2.2 網絡爬蟲的常用技術 2.3 網絡爬蟲常用的第三方庫 3 簡單爬蟲示例 專欄導讀 專欄訂閱地址&#xff1a;https://blog.csdn.net/…

【玩轉Linux操作】crond的基本操作

&#x1f38a;專欄【玩轉Linux操作】 &#x1f354;喜歡的詩句&#xff1a;更喜岷山千里雪 三軍過后盡開顏。 &#x1f386;音樂分享【Counting Stars 】 歡迎并且感謝大家指出小吉的問題&#x1f970; 文章目錄 &#x1f354;概述&#x1f354;命令?常用選項 &#x1f354;練…

軟件-常用軟件系統架構

目錄 1.客戶端-服務器架構 2.分布式架構 3.微服務架構 4.事件驅動架構 5.單體架構 6.混合架構 當我們談論系統架構時&#xff0c;可以將其比喻為一座房子的設計和結構&#xff0c;想象一下你計劃建造一座豪華別墅&#xff0c;你需要考慮各種因素&#xff1a;如房子的大小…

linux下常見編譯問題

linux下常見編譯問題 linux-cmake靜態編譯查看系統支持的的libc版本查看程序需要的動態鏈接庫查看程序需要的libc版本freebsd下 linux-cmake靜態編譯 CMakeLists.txt 添加 set(CMAKE_EXE_LINKER_FLAGS "-static")ELF 64-bit LSB executable, AMD x86-64, version 1…

【微服務】一文了解 Nacos

一文了解 Nacos Nacos 在阿里巴巴起源于 2008 2008 2008 年五彩石項目&#xff08;完成微服務拆分和業務中臺建設&#xff09;&#xff0c;成長于十年雙十一的洪峰考驗&#xff0c;沉淀了簡單易用、穩定可靠、性能卓越的核心競爭力。 隨著云計算興起&#xff0c; 2018 2018 20…

編程練習(3)

一.選擇題 第一題&#xff1a; 函數傳參的兩個變量都是傳的地址&#xff0c;而數組名c本身就是地址&#xff0c;int型變量b需要使用&符號&#xff0c;因此答案為A 第二題&#xff1a; 本題考察const修飾指針變量&#xff0c;答案為A,B,C,D 第三題&#xff1a; 注意int 型變…

13---內嵌HTML和React

雖然Markdown本身不支持內嵌HTML和React&#xff0c;但可以在Markdown文檔中直接插入HTML代碼和React組件。 一、在markdown中內嵌HTML 在Markdown中&#xff0c;你可以使用HTML標簽來實現更復雜的樣式和布局。例如&#xff0c;你可以使用<div>標簽來創建一個容器&#…

算法與數據結構(五)--樹與二叉查找樹

符號表的增刪查操作&#xff0c;隨著元素個數N的增多&#xff0c;其耗時也是線性增多的&#xff0c;時間復雜度都是O(n)&#xff0c;為了提高運算效率&#xff0c;我們學習樹這種數據結構。 目錄 一.樹的基本定義 二.樹的相關術語 三.二叉樹的基本定義 四.二叉樹的鏈表實現…

leetcode 279. 完全平方數

2023.8.18 與零錢兌換相似&#xff0c;本題屬于完全背包問題&#xff1a;完全平方數為物品&#xff0c;整數n為背包。 直接上代碼&#xff1a; class Solution { public:int numSquares(int n) {vector<int> dp(n1 , INT_MAX);dp[0] 0;for(int i1; i*i<n; i){for(in…