編程技能:格式化打印01,vsprintf 函數族簡介

專欄導航

本節文章分別屬于《Win32 學習筆記》和《MFC 學習筆記》兩個專欄,故劃分為兩個專欄導航。讀者可以自行選擇前往哪個專欄。

(一)WIn32 專欄導航

上一篇:編程技能:字符串函數14,memset

回到目錄

下一篇:無

(二)MFC 專欄導航

上一篇:編程技能:字符串函數14,memset

回到目錄

下一篇:無

本節前言

從本節開始,我們來講解格式化打印。本節,是一個簡介。

一.? ? ?什么是格式化打印

什么是格式化打印?

我們在基礎的 C 語言學習里面,所接觸到的 printf 函數,就是一個格式化打印函數。

print,是打印的意思。f,是 format 的簡寫。所以呢,printf 函數名,其實是 print 與 format 兩個單詞的結合。

所謂的,打印,不是指在打印機上,將文件內容給印出來。編程里的打印,指的是,將一段文字或者圖形,輸出顯示在顯示屏幕上。

格式化打印,它所涉及的,是一個函數族。其中呢,當然是包含著 printf 的。除了 printf 之外,還包含著 vsprintf,sprintf 等等的函數。

本板塊,我們打算將格式化打印函數族,或者叫做 vsprintf 函數給講解一下。

二.? ? 講解規劃

在講解本版塊兒的時候,vsprintf,sprintf,printf,這三個函數我都打算去講解。具體地,我會先去講解 vsprintf,然后是去講解 sprintf,最后是講解 printf 。

詳細地講解這三個函數,并不是本版塊兒的任務。如果以后,我去講解匯編語言的話,那么,我會領著大家,認認真真地來學習一下 這三個格式化打印函數。而在此時,我只能假定,你具備了高級語言的編程基礎,但是尚不具備匯編語言基礎。在你尚不了解匯編語言的情況下,我很難讓你徹底理解這三個格式化打印函數。

雖說,本版塊兒不會讓你徹底理解它們。但是呢,我會盡力地做到,讓你理解它們的基本含義,讓你會用它們。

在講解這幾個函數的時候,還會涉及 NULL 這一個東西,也會涉及 va_list,va_start,va_arg,va_end 等等的代碼知識。

講完了這三個函數的基本的知識與用法以后,我還會討論一下 printf 與 sprintf 的一點提升性質的用法。這點提升性質的用法,估計,你在基礎的語法學習階段,很有可能是學過的。然而,你可能記得不扎實,可能不太經常使用那些個擴展用法。而在本專欄里面,我要求,大家要對 printf 與 sprintf 的一些個擴展用法,有所認識。不要求你全部記住。但是呢,至少,當你有一天需要用到的時候,你能夠想到,可以到我的文章里去查,或者在其他的地方查詢相關知識點。

講完了格式化打印函數族以后,我們就會進入正式的 WIndows 編程的學習了。

我個人還是比較期待著正式的 WIndows?編程知識的講解的。因為,在當前,多數時候,我們都是在和控制臺界面打交道。我們終究還是要去和圖形界面打交道的。圖片,動畫,視頻,各種多媒體,都要求我們和圖形界面打交道。

實際上,圖形界面的編程,是非常地有意思的。對于圖形界面編程的學習,我相信,它可以在更大的程度上,鍛煉你的編程技能。

三.? ? 為何要去學習格式化打印函數族

直接去講解 Win32 與 MFC?知識,那不好嗎?為何要先去學習格式化打印函數呢?

因為,在正式的 Win32 的學習中,我們可能會需要用到格式化打印的知識。

比如說,在 WIndows 編程里面,有著 wsprintf 這樣的函數。想要理解這樣的函數,你最好是先學習過 sprintf 函數。而想要很好地理解 sprintf 函數,最好呢,你事先學習過 vsprintf 函數。

本版塊兒的知識,我認為,大概還是有著一定的挑戰性的。

結束語

本節只是一個簡介。下一節,我們來講解 vsprintf 函數。

專欄導航

本節文章分別屬于《Win32 學習筆記》和《MFC 學習筆記》兩個專欄,故劃分為兩個專欄導航。讀者可以自行選擇前往哪個專欄。

(一)WIn32 專欄導航

上一篇:編程技能:字符串函數14,memset

回到目錄

下一篇:無

(二)MFC 專欄導航

上一篇:編程技能:字符串函數14,memset

回到目錄

下一篇:無

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

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

相關文章

PECVD 生成 SiO? 的反應方程式

在PECVD工藝中,沉積氧化硅薄膜以SiH?基與TEOS基兩種工藝路線為主。 IMD Oxide(USG) 這部分主要沉積未摻雜的SiO?,也叫USG(Undoped Silicate Glass),常用于IMD(Inter-Metal Diele…

[IMX] 10.串行外圍設備接口 - SPI

代碼鏈接:GitHub - maoxiaoxian/imx 參考資料: https://zhuanlan.zhihu.com/p/290620901 SPI協議詳解 - bujidao1128 - 博客園 SPI總線協議及SPI時序圖詳解 - Ady Lee - 博客園 目錄 1.SPI 簡介 2.I.MX6U ECSPI 簡介 2.1.控制寄存器 1 - ECSPIx_CO…

基于Docker和YARN的大數據環境部署實踐最新版

基于Docker和YARN的大數據環境部署實踐 目的 本操作手冊旨在指導用戶通過Docker容器技術,快速搭建一個完整的大數據環境。該環境包含以下核心組件: Hadoop HDFS/YARN(分布式存儲與資源調度)Spark on YARN(分布式計算…

Java設計模式之中介者模式詳解

Java設計模式之中介者模式詳解 一、中介者模式核心思想 核心目標:通過中介對象封裝一組對象間的交互,將網狀的對象關系轉變為星型結構。如同機場控制塔協調所有飛機的起降,避免飛機之間直接通信導致的混亂。 二、中介者模式類圖(…

ArcGIS應用指南:基于網格與OD成本矩陣的交通可達性分析

隨著城市化進程的加速,交通系統的效率和公平性日益成為影響居民生活質量的關鍵因素之一。在這一背景下,如何科學評估城市區域內的交通可達性,成為了城市規劃、交通管理和公共政策制定中的重要議題。作為中國東南沿海的重要港口城市,廈門以其獨特的地理優勢和快速的城市發展…

基于NXP例程學習CAN UDS刷寫流程

文章目錄 前言1.概述1.1 診斷報文 2.協議數據單元(N_PDU)2.1 尋址信息(N_AI)2.1.1 物理尋址2.1.2 功能尋址2.1.3 常規尋址(Normal addressing)2.1.4 常規固定尋址(Normal fixed addressing)2.1.5 擴展尋址&…

近期手上的一個基于Function Grap(類AWS的Lambda)小項目的改造引發的思考

函數式Function是云計算里最近幾年流行起來的新的架構和模式,因為它不依賴云主機,非常輕量,按需使用,甚至是免費使用,特別適合哪種數據同步,數據轉發,本身不需要保存數據的業務場景,…

什么是 SQL 注入?如何防范?

什么是 SQL 注入?如何防范? 1. SQL 注入概述 1.1 基本定義 SQL 注入(SQL Injection)是一種通過將惡意SQL 語句插入到應用程序的輸入參數中,從而欺騙服務器執行非預期SQL命令的攻擊技術。攻擊者可以利用此漏洞繞過認證、竊取數據甚至破壞數據庫。 關鍵結論:SQL 注入是O…

高德地圖應用OceanBase單元化構建下一代在線地圖服務

IEEE International Conference on Data Engineering (ICDE) 是數據庫和數據工程領域的頂級學術會議之一(與SIGMOD、VLDB并成為數據庫三大頂會),自1984年首次舉辦以來,每年舉辦一次。ICDE涵蓋廣泛的主題,包括數據庫系統…

Vue3中Element-Plus中el-input及el-select 邊框樣式

如果不需要顯示下邊框&#xff0c;純無邊框直接將 【border-bottom: 1px solid #C0C4CC; 】注掉或去掉即可。 正常引用組件使用即可&#xff0c;無須自定義樣式&#xff0c;最終效果CSS樣式。 <style scoped> /* 輸入框的樣式 */ :deep(.el-input__wrapper) { box-sha…

如何做好一份技術文檔:從信息孤島到知識圖譜的進階之路

如何做好一份技術文檔&#xff1a;從信息孤島到知識圖譜的進階之路 在軟件開發的漫長征程中&#xff0c;技術文檔如同隱藏在代碼叢林中的路標&#xff0c;不僅指引著開發團隊的前行方向&#xff0c;更在產品迭代的歲月里構筑起知識傳承的橋梁。一份優質的技術文檔&#xff0c;既…

Docker Compose使用自定義用戶名密碼啟動Redis

通常我們使用下面的命令來啟動 redis 容器&#xff0c;此時連接 Redis 的時候是不需要用戶認證的 sudo docker run -d --name my-redis -p 6379:6379 redis此時我們可以使用 redis-server --requirepass "mypassword" 來指定默認用戶&#xff08;default&#xff09…

1.什么是node.js、npm、vue

一、Node.js 是什么&#xff1f; &#x1f63a; 定義&#xff1a; Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行時環境&#xff0c;讓你可以在瀏覽器之外運行 JavaScript 代碼&#xff0c;主要用于服務端開發。 &#x1f63a;從計算機底層說&#xff1a;什么是“運…

如何在 Vue.js 中集成 Three.js —— 創建一個旋轉的 3D 立方體

在這篇文章中&#xff0c;我將向大家展示如何將 Three.js 與 Vue.js 結合&#xff0c;創建一個簡單的 3D 場景&#xff0c;并展示一個旋轉的立方體。通過這個簡單的示例&#xff0c;你將學習到如何在 Vue 項目中集成 Three.js&#xff0c;以及如何創建動態的 3D 內容。 1. 安裝…

DeepSeek?R1-0528 重磅升級:螞蟻百寶箱免費、無限量調用

DeepSeek?R1-0528 重磅升級&#xff1a;螞蟻百寶箱免費、無限量調用 端午假期前一天&#xff0c;DeepSeek?R1 更新到了 0528 版本&#xff01; 官方說明&#xff1a;0528 版本在深度思考與推理能力方面顯著增強——在數學、編程與通用邏輯等多項基準測評中&#xff0c;表現已…

RS232轉Profinet網關在檢漏儀與西門子PLC里的應用

RS232轉Profinet網關在檢漏儀與西門子PLC里的應用 在工業自動化和控制領域&#xff0c;設備間的高效通信至關重要。RS232轉Profinet網關作為一種關鍵的轉換工具&#xff0c;能夠將傳統的RS232接口設備接入現代化的Profinet網絡&#xff0c;從而實現數據的無縫傳輸和設備的遠程…

jenkins-jenkins簡介

一、簡介 jenkins是一個可擴展的持續集成引擎。持續集成&#xff0c;也就是通常所說的CI&#xff08;Continues Integration&#xff09;&#xff0c;可以說是現代軟件技術開發的基礎。持續集成是一種軟件開發實踐&#xff0c; 即團隊開發成員經常集成他們的工作&#xff0c;通…

vue發版html 生成打包到docker鏡像進行發版

將Vue項目打包成Docker鏡像部署主要分為以下幾個步驟&#xff1a; 1. Vue項目打包? 執行npm run build生成dist文件夾&#xff0c;包含靜態資源文件 注意檢查index.html中資源引用路徑是否正確&#xff08;避免絕對路徑問題&#xff09; 2. 編寫Dockerfile Copy Code FROM…

掃地機器人苦尋新引擎,大疆們卻已攻入腹地

原創 科技新知 前沿科技組 作者丨江籬 編輯丨櫻木、九黎 競爭激烈的掃地機器人賽道&#xff0c;迎來了新玩家。 據近日相關報道&#xff0c;大疆掃地機器人產品已開始量產&#xff0c;預計將于6月份發布。消息稱大疆研發掃地機器人已超過四年&#xff0c;即將上市的產品是掃…

【C++】22. 紅黑樹封裝實現Mymap和Myset

上一章節我們實現了紅黑樹&#xff0c;這一章節我們就用紅黑樹封裝來實現一個我們自己的map和set 1. 源碼及框架分析 SGI-STL 3.0版本的源代碼中&#xff0c;map和set的實現主要分布在若干頭文件中&#xff0c;這些頭文件構成了這兩個容器的完整實現架構&#xff1a; 核心頭文…