㈠ c語言如何列印int long double 結構體變數各個位元組的內
#include <stdio.h>
int main(void){
int a=15;
long float b=123.1234567;
double c=12345678.1234567;
char d='p';
printf("a=%d\n", a);
printf("a(%%d)=%d, a(%%5d)=%5d, a(%%o)=%o, a(%%x)=%x\n\n",a,a,a,a); // %% 可以輸出 %
printf("a=%f\n", b);
printf("b(%%f)=%f, b(%%lf)=%lf, b(%%5.4lf)=%5.4lf, b(%%e)=%e\n\n",b,b,b,b);
printf("c=%f\n", c);
printf("c(%%lf)=%lf, c(%%f)=%f, c(%%8.4lf)=%8.4lf\n\n",c,c,c);
printf("d=%c\n", d);
printf("d(%%c)=%c, d(%%8c)=%8c\n",d,d);
return 0;
}
自己跑一下試試就明白了
㈡ C語言 十六進制怎麼輸出
需要准備的材料分別有:電腦、C語言編譯器。
1、首先,打開C語言編譯器,新建一個初始.cpp文件,例如:test.cpp。
㈢ C語言中如何輸出位元組數
a)putchar函數:將指定的(表達式的值所對應的)字元輸出到標准輸出終端(屏幕)上。
格式:int putchar( int c );
例如:putchar(『a』+3);列印的結果是d,是一個字元而不是數值。
a的ASCII碼是97,加3是ASCII碼表中100對應的字元就是d。
例如:putchar(99);列印的結果是c,代入一個數字列印出的是一個字元。
就如同代入的是學號,列印出來的是姓名一樣。
b)putc函數:將指定的字元輸出到指定標准輸出流(屏幕或一個文件)中。
格式:int putc( int c, FILE *stream );
c)等價關系:putc的功能中包含putchar的功能。
putchar(c)等價於putc(c,stdout)。
例如:putc(『A』,stdout)等價於putchar(『A』)
(3)c語言怎麼列印位元組擴展閱讀
C語言的字元對齊
1、數據類型自身的對齊值:對於char型數據,其自身對齊值為1,對於short型為2,對於int,float,double類型,其自身對齊值為4,單位位元組。
2、復雜類型(如聯合,結構體或者類)的自身對齊值:其成員中自身對齊值最大的那個值。
3、指定對齊值:#pragma pack (value)時的指定對齊值value。
4、數據成員、復雜類型(如聯合,結構體或類)的有效對齊值:自身對齊值和指定對齊值中小的那個值。
㈣ c語言 內存塊按位元組列印
這是在VC++ 6.0環境下的運行結果,得到的地址可能不同,但冒號右側的值一定是相同的。
/*
12FF40 : 0
12FF41 : 0
12FF42 : 0
12FF43 : 40
Press any key to continue
*/
#include<stdio.h>
intmain(){
inti,a=1073741824;
char*p=(char*)&a;
for(i=0;i<4;++i,++p)
printf("%4X:%2X ",p,*p);
return0;
}
㈤ c語言無符號,有符號變數輸出問題
挺有意思的題目。逐條解釋吧。
首先要明白char是按一個位元組存儲的,int是按4個位元組的存儲的,無符號數是和正數的符號位一樣。
%x按4個位元組列印十六進制(有符號),%d按4個位元組列印十進制(有符號)。
第一個列印:要按4個位元組的%x格式列印一個位元組的char型,所以輸出了這么多。
%d輸出的第二個:要以有符號的格式%d輸出一個無符號的數ic,所以會輸出負數。
%d輸出的第三個:要以有符號而且是4位元組的格式%d輸出一個無符號而且是一個位元組的char型,所以得到224。
㈥ c語言怎樣才能輸出中文(最簡單的方法)
起初,C語言沒有官方標准。1978年由美國電話電報公司(AT&T)貝爾實驗室正式發表了C語言。布萊恩·柯林漢(Brian Kernighan) 和 丹尼斯·里奇(Dennis Ritchie) 出版了一本書,名叫《The C Programming Language》。
這本書被 C語言開發者們稱為K&R,很多年來被當作 C語言的非正式的標准說明。人們稱這個版本的 C語言為K&R C。
K&R C主要介紹了以下特色:
結構體(struct)類型
長整數(long int)類型
無符號整數(unsigned int)類型
把運算符=+和=-改為+=和-=。因為=+和=-會使得編譯器不知道使用者要處理i = -10還是i =- 10,使得處理上產生混淆。
即使在後來ANSI C標准被提出的許多年後,K&R C仍然是許多編譯器的最 准要求,許多老舊的編譯器仍然運行K&R C的標准。
1970到80年代,C語言被廣泛應用,從大型主機到小型微機,也衍生了C語言的很多不同版本。
1983年,美國國家標准協會(ANSI)成立了一個委員會X3J11,來制定 C語言標准。
1989年,美國國家標准協會(ANSI)通過了C語言標准,被稱為ANSI X3.159-1989 "Programming Language C"。因為這個標準是1989年通過的,所以一般簡稱C89標准。有些人也簡稱ANSI C,因為這個標準是美國國家標准協會(ANSI)發布的。
1990年,國際標准化組織(ISO)和國際電工委員會(IEC)把C89標準定為C語言的國際標准,命名為ISO/IEC 9899:1990 - Programming languages -- C 。
因為此標準是在1990年發布的,所以有些人把簡稱作C90標准。不過大多數人依然稱之為C89標准,因為此標准與ANSI C89標准完全等同。
1994年,國際標准化組織(ISO)和國際電工委員會(IEC)發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Cor 1:1994,有些人簡稱為C94標准。
1995年,國際標准化組織(ISO)和國際電工委員會(IEC)再次發布了C89標准修訂版,名叫ISO/IEC 9899:1990/Amd 1:1995 - C Integrity [7] ,有些人簡稱為C95標准。
㈦ 寫c語言,一個函數分別列印它的高位元組和低位元組,並編寫主程序測試
void prtbyte(unsigned short x)
{printf("High Byte:%x\n",x>>8);
printf("Low Byte:%x\n",x&0xff);
}
int main()
{unsigned short x;
scanf("%hu",&x);
prtbyte(x);
return 0;
}