tag c

標籤
貢獻129
203
03:19 AM · Oct 27 ,2025

@c / 博客 RSS 訂閱

瞿小凱 - 小凱15天快速講完c語言-簡單學習第十課

複習 0.1 構造函數 對象被創建的時候,會自動調用 全局對象 局部對象 堆中的對象 構造函數的函數名字和類名一樣 構造函數沒有返回值,可以有參數,可以重載,一個類中可以實現多個構造函數 0.2 析構函數 對象被銷燬的時候,會自動調用 全局對象 程序結束的時候會自動銷燬 局部對象 離開作用域的時候,會自動銷燬 堆中的對象 delete釋放的時候,會自

學習 , c++ , 學習筆記 , 繼承 , c

收藏 評論

屠龍少年 - C語言取數組地址a、& a、& a[0]三種方式的易錯分析

a 通過數組名可以直接獲得數組的地址 a 使用取地址符同樣也可以獲取數組的地址 a[0] 取數組首元素地址也可以取得數組的地址 #include stdio.h int main(void) { int a[6] = {1, 2, 3, 4, 5,6}; printf("a: %p\n",a); printf("a: %p\n",a);

數組 , 指針 , c

收藏 評論

Masutaa大師 - C語言內存泄漏的常見情況及解決方案

內存泄漏(Memory Leak)是指程序在申請內存後,無法釋放已申請的內存空間,一次小的內存泄漏可能沒什麼影響,但長期或頻繁發生會佔用大量內存,影響系統性能甚至引發系統崩潰,造成系統資源的浪費。 內存泄漏存在於諸多編程語言中,是一種普遍的常見的問題。 以C和C++為代表的允許程序員直接管理內存的語言。內存泄漏的常見原因是程序員顯式地分配了內存,但忘記釋放不再需要的內存。 以Java、Pyt

c++11 , c++ , c# , c , 後端

收藏 評論

Hello - gdb調試c程序

本文由chatgpt生成 使用 gdb 結合斷點來分析程序是一種常用的調試方法,允許您在程序執行的不同階段停止執行並檢查變量、堆棧和程序狀態。以下是一些在使用 gdb 時結合斷點進行分析的基本步驟: 編譯程序時啓用調試信息: 在使用 gdb 進行調試之前,您需要確保在編譯程序時啓用了調試信息。通常,您可以使用 -g 標誌來編譯程序,例如: gcc -g -o my_program

gdb , c , 調試

收藏 評論

神經蛙 - 模塊化,流程化,自動化

1. 最理想的情況是,一個模塊(比如一個庫)只輸出指定的外部接口,其餘內部接口對外都不可見,都是static的。 這個目標不太好實現。 如果是一個很小的模塊,所有代碼都在一個文件中,只有少量的對外接口,也只有少量的內部接口,這是可以實現的。 但是,一般意義上的一個模塊,通常是較大的,包含多個較小的子模塊,除了對外提供的接口和子模塊內部的接口,還有子模塊之間交互的接口。子模塊之間交互的接口,不

模塊化 , c , 接口設計

收藏 評論

NULL - 零長數組初識

前言 本來是解決frr在交叉編譯時,編譯mips架構不可用的問題,後來排查到是因為一個數組的問題,然後無意中看到一個詞---零長數組。嘿,還挺新鮮,以前真沒用過。研究了一下,感覺還挺實用。 例子 廢話不多少,先上例子,看咋用: #include stdio.h #include stdlib.h #include string.h #define MAX_LENGTH 10 // 0長度數組

code , 數組 , Linux , c

收藏 評論

MorpheusDong - windows socket通信demo(UDP)

第一次學socket,慚愧,看了一些博客和項目代碼寫出來的小demo。 功能: 啓動server端進程後,server端進入監聽。 啓動client端進程,用户輸入字符串。 server端打印接收到的字符串,等待用户輸入字符串,回覆給client端。 client端打印接收到的字符串,demo結束。 server端代碼: #include WinSock2.h //f

socket , c

收藏 評論

秦懷雜貨店 - Redis【2】- SDS源碼分析

1 簡介基礎用法 Redis 中用得最多的就是字符串,在 C 語言中其實可以直接使用 char* 字符數組來實現字符串,也有很多可以直接使用得函數。但是 Redis 並沒有使用 C 語言原生的字符串,而是自己實現了一個 SDS(簡單動態字符串,Simple Dynamic String) 。 Redis 的 SDS 兼容了 C 語言的字符串類型的用法, 下面是 Redis 中 string 類型最

redis , 源碼 , c , 後端

收藏 評論

da_miao_zi - ping命令第1版主流程的源碼分析

我們知道,ping 命令是通過 ICMP(Internet Control Message Protocol,互聯網控制消息協議)來檢測網絡連通性和延遲的。執行 ping 命令的主機(源主機)會向目標主機發送 ICMP Echo Request 報文,目標主機收到該報文後,應響應 ICMP Echo Reply 報文。 如果源主機能夠收到目標主機返回的 ICMP Echo Reply 報文,就説明

網絡編程 , ping , icmp , 網絡傳輸協議 , c

收藏 評論

粘豆包 - The Rust Programming Language 學習 (三)

所有權 所有權(系統)是 Rust 最為與眾不同的特性,它讓 Rust 無需垃圾回收器(garbage collector)即可保證內存安全。因此,理解 Rust 中所有權的運作方式非常重要。 這裏是非常重非常重的一個知識點,這裏一定要打好基礎. 因為所有權對很多開發者來説都是一個新概念,需要一些時間來適應。好消息是隨着你對 Rust 和所有權系統的規則越來越有經驗,你就越能自然地編寫出安全和高效

rust , 編程語言 , c++ , JAVA , c

收藏 評論

粘豆包 - The Rust Programming Language 學習 (四)

結構體 struct,或者 structure,是一個自定義數據類型,允許你命名和包裝多個相關的值,從而形成一個有意義的組合。如果你熟悉一門面向對象語言,struct 就像對象中的數據屬性。 定義並實例化結構體 和元組一樣,結構體的每一部分可以是不同類型。但不同於元組,結構體需要命名各部分數據以便能清楚的表明其值的意義。由於有了這些名字,結構體比元組更靈活:不需要依賴順序來指定或訪問實例中的值。

rust , 編程語言 , c , 結構體

收藏 評論

da_miao_zi - PHP核心開發者Nikita的首次提交,就實現了個寂寞啊

Nikita Popov 曾是 PHP 社區中備受尊敬的核心開發者之一。幾年間,他深度參與了性能優化工作,一邊不斷實現新功能,一邊修復歷史遺留的大量錯誤,是把 PHP 從“老舊腳本語言”推動為“現代編程語言”的關鍵人物之一。 Nikita 可謂年輕有為,據説還在高中時期就開始參與 PHP 開發,首次貢獻是在 PHP 5.5 版本中。 我們不禁好奇,這位才華橫溢的開發者第一次會向 PHP 代碼庫提

php , c , php7

收藏 評論

龍智DevSecOps - 單元測試工具TESSY現已支持ABIX HiperSIM,助力MELEXIS MLX16 汽車嵌入式系統的軟件驗證

本文來源razorcat.com ,由 Razorcat 合作伙伴及 TESSY 授權分銷商——龍智翻譯整理。旨在為國內用户分享介紹 TESSY 對 ABIX HiperSIM 的集成支持,及其在 MELEXIS MLX16 汽車嵌入式系統開發中的應用價值。 Razorcat 的 C/C++ 單元與集成測試工具 TESSY,現已支持 ABIX HiperSIM 模擬器,可用於基於 MELEXIS

軟件測試 , 嵌入式 , 單元測試 , c++ , c

收藏 評論

BlackQid - printf()和scanf()的佔位符列舉——C語言

如樣例代碼printf("BMI = %f\n", 21.3),其中%f就是一個佔位符。printf()函數的佔位符有許多種類,與c語言的數據類型相對應。以下列舉一些常見的。 佔位符 含義 %a 十六進制浮點數,字母輸出為小寫。 %A 十六進制浮點數,字母輸出為大寫。 %c 字符。//char

算法 , 知識 , c , 後端

收藏 評論

f702 - 解決:Reworks上開發node-exporter報錯—內存篇

Reworks為嵌入式實時操作系統,arm架構 編譯報錯 1.報錯:編譯庫缺失 分析:__atomic_load_8,屬於原子操作庫libatomic 。 正則表達式庫 libregex相關函數 : __atomic_store_8 中的 "8" 代表8 字節,也就是64 位操作。意味着在編譯器確定 self-r_value 的類型時,它被判定為 64 位類型(例如 long long

嵌入式 , 操作系統 , prometheus , c

收藏 評論

哈哈哼嘿 - C語言基礎語法

基礎語法 一、前言 1.1 概述 1.1.1 學嵌入式用C語言的理由 優勢 一句話解釋 直接控制 用指針和位操作直接命令硬件,像操作開關一樣精準。 高效精簡 代碼小,速度快,資源佔用極低,最適合資源有限的單片機。 通用標準 行業“普通話”,所有芯片和官方庫都支持,代碼可跨平台複用。

教程 , 程序員 , c

收藏 評論

哈哈哼嘿 - C語言:位運算、分支、循環

位運算、分支、循環 一、基礎語法 1.1 位運算符 運算符 術語 示例 結果 按位與 011 101 2個都為1才為1,結果為001 \ 按位或 011 \ 101 有1個為1就為1,結果為111 ^ 按位異或 011 ^ 101 不同的為1,

教程 , 知識 , c# , c

收藏 評論

BlackQid - 基於C的素數計算小程序及優化

質數(英文名:Prime number)又稱素數,是指在大於1的自然數中,除了1和它本身以外不再有其他因數的自然數。質數又稱素數。 以100~200之間的素數計算為例,通過以下C語言程序可以很容易地實現。需要包含頭的文件有stdio.h。 #includestdio.h int main() { int i = 0; for (i = 100; i = 200; i++)

知識 , c , 後端

收藏 評論

CodeSheep - 我天,Java 已淪為老四。。

略想了一下才發現,自己好像有大半年都沒有關注過 TIOBE 社區了。 TIOBE 編程社區相信大家都聽過,這是一個查看各種編程語言流行程度和趨勢的社區,每個月都有榜單更新,每年也會有年度榜單和總結出爐。 昨晚在家整理瀏覽器收藏夾時,才想起了 TIOBE 社區,於是打開看了一眼最近的 TIOBE 編程語言社區指數。 沒想到,Java 居然已經跌出前三了,並且和第一名 Python 的差距也進一步拉

JAVA , c , go , Javascript , Python

收藏 評論

哈哈哼嘿 - C語言:函數指針,數組,結構體

函數指針、數組、結構體 一、函數指針 1.1 函數名 一個函數在編譯時被分配一個入口地址,這個地址就稱為函數的指針,函數名代表函數的入口地址 #include stdio.h // 一個函數在編譯時被分配一個入口地址,這個地址就稱為函數的指針,函數名代表函數的入口地址 void func() { printf("這是func函數內部的打印\n"); } int main() {

知識 , c# , c

收藏 評論

哈哈哼嘿 - C語言:複合類型,內存管理,綜合案例

day05:複合類型、內存管理、綜合案例 一、複合類型(自定義類型) 1.1 共用體(聯合體) 共用體和結構體區別 特性 結構體 (struct) 共用體 (union) 存儲方式 各成員順序存儲,擁有獨立的內存空間。 所有成員共享同一塊起始內存空間。 內存佔用 所有成員大小之和(需考慮內存對齊)。

教程 , 知識 , c# , c

收藏 評論

BlackQid - 基於C的猜數字遊戲——詳解隨機數生成原理與技巧

關鍵詞:隨機數 設計要求:生成一個100~200之間的隨機數,玩家有5次猜數字的機會。 以下為完整代碼。 #define _CRT_SECURE_NO_WARNINGS 1 #includestdio.h #includestdlib.h #includetime.h void menu() { printf("***** 猜數字遊戲 *****\n"); printf("

遊戲 , 教程 , 知識 , c

收藏 評論

愚人貓Idiomeo - Flex與Bison快速入門深入並打造腳本編程語言前端

Flex 與 Bison 快速入門:打造腳本語言前端 一、介紹 在現代軟件開發中,編譯器和解釋器是許多高級語言的基礎架構。而詞法分析和語法分析則是編譯器前端的核心組成部分。Flex 和 Bison 作為開源的詞法分析器和語法分析器生成工具,為開發者提供了高效構建語言解析系統的能力。 Flex(Fast Lexical Analyzer)是一個詞法分析器生成工具,能夠根據正則表達式規則生成詞法分析器

bison , flex , 編程語言 , c , 編譯原理

收藏 評論

深盾安全 - C/C++ 之棧幀運作:函數調用的底層密碼

寫代碼時隨手寫下的函數調用,背後藏着一套計算機嚴格遵守的"操作手冊"。為什麼參數傳遞要"倒着來"?棧幀是如何"搭起來"又"拆乾淨"的?今天就用32位程序的實例,帶你透過彙編指令看清函數調用的底層邏輯。 一、從一段加法代碼説起 先看這段再普通不過的代碼: int add_func(int a, int b) { int sum = 0; sum = a + b; return

c++ , c

收藏 評論