欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言中格式化輸出符號%d、%c、%p、%x等詳解

 更新時間:2024年06月13日 09:29:31   作者:林樹杰  
格式化輸出在C語言中非常常用,提供了多種用法來控制輸出的格式,下面這篇文章主要給大家介紹了關于C語言中格式化輸出符號%d、%c、%p、%x等的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下

概覽

C語言中的格式化輸出符號有很多,以下是一些常見的:

  • %d 或 %i:用于輸出十進制整數(shù)。
  • %u:用于輸出無符號十進制整數(shù)。
  • %f:用于輸出浮點數(shù)。
  • %s:用于輸出字符串。
  • %c:用于輸出字符。
  • %p:用于輸出指針。
  • %x 或 %X:用于輸出十六進制數(shù),%x表示輸出小寫字母,%X表示輸出大寫字母。
  • %o:用于輸出八進制數(shù)。
  • %e 或 %E:用于輸出科學計數(shù)法表示的浮點數(shù)。
  • %g 或 %G:用于輸出浮點數(shù),但是沒有無意義的零。

這些格式化輸出符號可以在printf函數(shù)的格式字符串中使用,用來指定輸出的格式。

%d

%d是C語言中的格式化輸出符號,用于將整數(shù)值按照十進制格式輸出到標準輸出流(通常是控制臺)。它可以用于printf函數(shù)中的格式化字符串中,指示要輸出的整數(shù)的位置和格式。例如,"%d"可以用來輸出一個整數(shù)變量的值。

%c

%c是C語言中的格式化輸出符號,用于輸出字符。在printf函數(shù)中,%c可以用來輸出一個字符變量的值。在你的代碼中,如果你想打印出數(shù)組元素的字符表示,你可以使用%c。

#include <stdio.h>

int main() {
    unsigned char array[16];
    for (int i = 130; i < 146; i++)
    {
        array[i] = i;
        //打印數(shù)組的每個元素的地址和值
        printf("array[%d] address is %p, value is %c\n", i, &array[i], array[i]);
        
    }
    // 
    return 0;
}
printf("array[%d] address is %p, value is %c\n", i, &array[i], array[i]);

這將會打印出數(shù)組元素的字符表示,而不是整數(shù)值。

輸出:

array[130] address is 000000000061FE82, value is é
array[131] address is 000000000061FE83, value is a
array[132] address is 000000000061FE84, value is ?
array[133] address is 000000000061FE85, value is à
array[134] address is 000000000061FE86, value is ?
array[135] address is 000000000061FE87, value is ?
array[136] address is 000000000061FE88, value is ê
array[137] address is 000000000061FE89, value is ?
array[138] address is 000000000061FE8A, value is è
array[139] address is 000000000061FE8B, value is ?
array[140] address is 000000000061FE8C, value is ?
array[141] address is 000000000061FE8D, value is ì
array[142] address is 000000000061FE8E, value is ?
array[143] address is 000000000061FE8F, value is ?
array[144] address is 000000000061FE90, value is é
array[145] address is 000000000061FE91, value is ?

%d和%c的區(qū)別

%p

在C語言中,%p是一種格式化輸出的轉換說明符,用于打印指針變量的值。例如,下面的代碼使用%p打印一個指向整數(shù)的指針變量p的值:

int num = 42;
int *p = &num;
printf("The value of p is %p\n", p);

輸出為:

The value of p is 0x7ffee1d7e9ac

%p打印出的是指針變量p的十六進制地址。

%x %X

在C語言中,我們可以使用轉換說明符 %x 或 %X 來打印十六進制數(shù)。

%x 會將小寫字母用于小于等于10的數(shù)字以及大寫字母用于大于10的數(shù)字,而 %X 則全部使用大寫字母。

下面是一個示例代碼:

int num = 255;
printf("num in hex is %x\n", num);  // 輸出 "num in hex is ff"
printf("num in HEX is %X\n", num);  // 輸出 "num in HEX is FF"

%x 和 %X 都只能用于輸出 unsigned int 或者 unsigned long 類型的數(shù)據(jù),如果使用 %x 或 %X 輸出其他類型的數(shù)據(jù),將會導致未定義的行為。

輸出浮點數(shù)

在C語言中,可以使用%f,%e,%g,%E%G作為格式化輸出符號來輸出浮點數(shù)。

  • %f:按固定點表示法打印浮點數(shù)。
  • %e 或 %E:按科學計數(shù)法打印浮點數(shù)。%e使用小寫字母(例如,3.14159e+00),%E使用大寫字母(例如,3.14159E+00)。
  • %g 或 %G:根據(jù)值的大小,printf函數(shù)決定使用固定點表示法或科學計數(shù)法。%g使用小寫字母,%G使用大寫字母。

例如:

float num = 3.14159;
printf("The value of num is %f\n", num);
printf("The value of num is %e\n", num);
printf("The value of num is %g\n", num);

這將分別以固定點表示法,科學計數(shù)法和自動選擇的方式打印出浮點數(shù)。

參考

《C Primer Plus》

總結

到此這篇關于C語言中格式化輸出符號%d、%c、%p、%x等的文章就介紹到這了,更多相關C語言格式化輸出符號%d %c %p %x內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • C語言 二叉查找樹性質詳解及實例代碼

    C語言 二叉查找樹性質詳解及實例代碼

    這篇文章主要介紹了C語言 二叉查找樹性質詳解及實例代碼的相關資料,需要的朋友可以參考下
    2017-03-03
  • C++編程中刪除運算符與相等運算符的使用解析

    C++編程中刪除運算符與相等運算符的使用解析

    這篇文章主要介紹了C++編程中刪除運算符與相等運算符的使用解析,delete和==以及!=運算符的使用是C++入門學習中的基礎知識,需要的朋友可以參考下
    2016-01-01
  • C++之list容器介紹及使用方式

    C++之list容器介紹及使用方式

    這篇文章主要介紹了C++之list容器介紹及使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 不要被C++(自動生成規(guī)則)所蒙騙

    不要被C++(自動生成規(guī)則)所蒙騙

    正如標題所說,我們不要被C++語法中所描述的那些條條框框所“蒙騙”了。的確,相信這些生成規(guī)則不會對我們的編程帶來多大的影響(不會產(chǎn)生錯誤),但是只有了解它們的背后操作,我們才知道編譯器究竟為我們做了什么,感興趣的朋友可以了解下,希望本文對你有所幫助
    2013-01-01
  • C++類成員初始化的三種方式

    C++類成員初始化的三種方式

    如果靜態(tài)成員不滿足常量性,則不可以就地聲明,而且即使常量的靜態(tài)成員也只能是整型或者枚舉型才能就地初始化。而非靜態(tài)成員變量的初始化則必須在構造函數(shù)中進行。首先,先得了解一下C++支持哪幾種類成員初始化的方式,下面我們就來看看具體內(nèi)容吧
    2021-09-09
  • C語言中的pause()函數(shù)和alarm()函數(shù)以及sleep()函數(shù)

    C語言中的pause()函數(shù)和alarm()函數(shù)以及sleep()函數(shù)

    這篇文章主要介紹了C語言中的pause()函數(shù)和alarm()函數(shù)以及sleep()函數(shù),是C語言入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • Qt實現(xiàn)矩形大小任意縮放的示例代碼

    Qt實現(xiàn)矩形大小任意縮放的示例代碼

    這篇文章主要介紹了Qt如何實現(xiàn)在窗口上繪制任意大小的矩形,并且通過邊角的拖曳按鈕可改變矩形大小,感興趣的小伙伴可以跟隨小編一起學習一下
    2022-06-06
  • 解析C++中指向對象的指針使用

    解析C++中指向對象的指針使用

    這篇文章主要介紹了解析C++中指向對象的指針使用,是C++入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • linux下基于C語言的信號編程實例

    linux下基于C語言的信號編程實例

    這篇文章主要介紹了linux下基于C語言的信號編程,實例分析了信號量的基本使用技巧與相關概念,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 獲取C++變量類型的簡單方法

    獲取C++變量類型的簡單方法

    這篇文章主要介紹了獲取C++變量類型的簡單方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09

最新評論