C语言sprintf函数(发送格式化输出到 str 所指向的字符串)(format 标签属性)(字符串拼接)(数字转字符串、浮点数转字符串)
C語言函數(shù) snprintf()(發(fā)送有限字符格式化輸出到 str 所指向的字符串)(字符串拼接)
文章目錄
- 描述
- 聲明
- 參數(shù)
- 返回值
- 實(shí)例
- 20220124 上面的實(shí)例太簡陋了,我們拓展一下
- 實(shí)例1,字符串拼接
- 20220403 浮點(diǎn)數(shù)轉(zhuǎn)字符串
描述
C 庫函數(shù) int sprintf(char *str, const char *format, …) 發(fā)送格式化輸出到 str 所指向的字符串。
聲明
下面是 sprintf() 函數(shù)的聲明。
int sprintf(char *str, const char *format, ...)參數(shù)
str – 這是指向一個(gè)字符數(shù)組的指針,該數(shù)組存儲(chǔ)了 C 字符串。
format – 這是字符串,包含了要被寫入到字符串 str 的文本。它可以包含嵌入的 format 標(biāo)簽,format 標(biāo)簽可被隨后的附加參數(shù)中指定的值替換,并按需求進(jìn)行格式化。format 標(biāo)簽屬性是 %[flags][width][.precision][length]specifier,具體講解如下:
附加參數(shù) – 根據(jù)不同的 format 字符串,函數(shù)可能需要一系列的附加參數(shù),每個(gè)參數(shù)包含了一個(gè)要被插入的值,替換了 format 參數(shù)中指定的每個(gè) % 標(biāo)簽。參數(shù)的個(gè)數(shù)應(yīng)與 % 標(biāo)簽的個(gè)數(shù)相同。
返回值
如果成功,則返回寫入的字符總數(shù),不包括字符串追加在字符串末尾的空字符。如果失敗,則返回一個(gè)負(fù)數(shù)。
實(shí)例
下面的實(shí)例演示了 sprintf() 函數(shù)的用法。
#include <stdio.h> #include <math.h>int main() {char str[80];sprintf(str, "Pi 的值 = %f", M_PI);puts(str);return(0); }讓我們編譯并運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:
Pi 的值 = 3.141593參考文章:C 庫函數(shù) - sprintf()
20220124 上面的實(shí)例太簡陋了,我們拓展一下
實(shí)例1,字符串拼接
#pragma warning(disable : 4996) #include <stdio.h> #include <stdlib.h> int main(void) {char buffer[100];sprintf(buffer, "%d, %f, %s", 123, 123.0, "Hello world !");printf("%s\n", buffer);return 0; }在VS上編譯運(yùn)行:
123, 123.000000, Hello world !F:\Arnold_Test\20211124-2_TEST\TEST\x64\Debug\TEST.exe (進(jìn)程 29636)已退出,代碼為 0。 按任意鍵關(guān)閉此窗口. .20220403 浮點(diǎn)數(shù)轉(zhuǎn)字符串
參考文章:C語言把浮點(diǎn)數(shù)轉(zhuǎn)換為字符串
與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的C语言sprintf函数(发送格式化输出到 str 所指向的字符串)(format 标签属性)(字符串拼接)(数字转字符串、浮点数转字符串)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么读写文件要有缓冲区?为什么要有输入
- 下一篇: opencv cv::mat::data