內存泄漏檢測工具Sanitizer介紹
內存泄漏,我們經常會遇到,如何檢測內存泄漏,除了我們之前講過的 valgrind,還可以使用 gcc....
STM32和ESP32應該學哪個
STM32 和 ESP32,哪個更適合我們學習? 這兩個雖然都是單片機,但是各自的應用領域不一樣,不....
深入探索GCC的attribute屬性
如果經常看Linux源碼,一定會見過 attribute 屬性,他在 Linux 里面出現的很多。 ....
15行代碼引發1800多行編譯錯誤:問題排查挑戰
寫了 15 行代碼,編譯報錯竟然高達 1800 多行,這種奔潰的瞬間應該有很多同學遇到過。 代碼分為....
分析C語言代碼結構的設計問題
來分析一個C語言代碼結構的設計問題。 這段代碼,使用了兩次malloc,分別給 p1 和 p2 申請....
在Linux下安裝軟件有哪些方法
在Linux下安裝軟件,可以有哪些方法? 首先是最簡單的,使用軟件包管理工具。 如果是ubuntu或....
利用棧結構實現四則運算的巧妙方法
上個視頻寫了個簡易計算器,算個簡單的加減乘除還行,但是如果來個混合運算,或者加個括號,這幾行代碼就差....
指針被釋放后就變成了空指針嗎
指針被釋放后,是不是就變成了空指針?有好多同學提出了這樣的問題。 借用《C專家編程》上面的一段代碼,....
C語言如何處理函數的返回值
當你在函數的最后寫上 return 0 的時候,它是如何返回給調用函數的? 比如 test 函數,為....
const定義的是不是常量
C語言是如何定義常量的?const定義的算不算是常量? 常見的有這么幾種方式。 首先就是宏定義,使用....
不停的malloc程序會異常嗎
把 malloc 放在死循環里面,會是什么樣的現象? 比如這樣的代碼,每次使用 malloc 申請 ....
如何把兩個數據返回給調用函數
函數的處理結果包含兩個數據,如何把兩個數據返回給調用函數? 第一種,把兩個數據封裝成一個結構體,函數....
數組的下標為什么可以是負數
最近有同學發來這樣一段代碼,并提出一個問題,數組的下標為什么可以是負數? ? ? #include ....
stdio.h實現了printf函數?
我們平時包含的 stdio.h 頭文件,里面是不是實現了 printf 函數? 為什么會有這個疑問?....
養成良好的編程習慣|堆內存初值不一定是0
? 什么是良好的編程習慣?可以看下這段代碼,有沒有什么問題? #include #include i....
同樣是函數,在C和C++中有什么區別
同樣是函數,在 C 和 C++ 中有什么區別? 第一個返回值。 C語言的函數可以不寫返回值類型,編譯....
四種方法教你判斷設備的字節序
如何判斷設備的字節序,提供 4 種方法給大家參考。 首先就是從概念入手。 所謂小端字節序,高字節存放....
C語言中申請的堆內存能不能自動釋放
C語言中申請的堆內存能不能自動釋放?每次都要手動 free 太麻煩,也容易忘記。 學過 C++ 的同....
C語言中的頭文件能不能重復包含
C語言中的頭文件能不能重復包含? 比如代碼寫成這樣,stdio.h 連續包含了兩次。 #includ....
結構體成員的順序會影響結構體的大小嗎
相同的結構體成員,如果把順序調整一下,會不會影響結構體的大??? 答案是會的,這主要跟字節對齊有關。 ....
指針數組和二維數組有沒有區別
指針數組和二維數組有沒有區別?比如這樣的兩個代碼。 int main(){ char *s1[] =....
C語言關鍵字分別發生在哪個階段
以下C語言關鍵字,分別發生在哪個階段? 第一個,define。 首先得糾正一下,define 并不是....
如何判斷Linux系統的位數
給你一個 Linux 系統,如何判斷它的位數? 我經常用的,有這么幾種方式。 第一個,使用命令: u....