版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
標(biāo)號引腳第二功能說明P3.010RXD P3.111TXD P3.212INT0 外部中斷0P3.313 P3.414 P3.515 P3.616 外部數(shù)據(jù)器寫脈沖(當(dāng)外部擴(kuò)展隨機(jī)讀寫器RAMRAMWEP3.717 外部數(shù)據(jù)讀脈沖(當(dāng)外部擴(kuò)展隨機(jī)讀寫器RAMRAMOEXTAL1、XTAL2外接時鐘引腳,XTAL1XTAL28051部時鐘方式,即將XTAL1接地,外部時鐘信號從XTAL2腳輸入。外部RAM時,兩個PSEN脈沖被跳過不會輸出ROMROMOE腳相接所加的電平轉(zhuǎn)換是MAX232(實(shí)驗(yàn)板左下角)。STC89C51RC40IPLCC型號為PLCC,制造工藝為RB8946.1D功能的Flash器,即具有ISP可編程功能 1-----表示內(nèi)部程序空間的大小,1為4KB,2為8KB,3為12KB,即該數(shù)乘上4KB就是內(nèi)部的程序空間大小。程序空間大小決定了一個所能裝入執(zhí)行代碼的多少。一般來說,程序空間越大,價格也越高,所以我們在選擇時要根據(jù)自己硬件設(shè)備實(shí)現(xiàn)功能所需代碼的大小來選擇價格合適的,只要程序能裝得下,同類的不同M表示產(chǎn)品,溫度范圍為-55℃~+150℃。 STICLeadedChipCarrier)帶引線的塑料封裝QFP(QuadFlatPackage)塑料方型扁平式封裝PFP(sticFlatPackage)塑料扁平組件式封裝PGA(PinGridArrayPackage)ZIF(ZeroInsertionsocket)是指零插拔力的插座。BGA(BallGridArrayPackage)球柵陣列封裝PBGA(sricBGA)多層板CBGA(CeramicBGA)陶瓷基板TBGA(TapeBGA)1-2PCB(CarityDownPBGA)基板。指封裝有方型低陷的區(qū)0819 (一般在十六進(jìn)制數(shù)的最后面加上后綴H,表示為十六進(jìn)制數(shù),如AH,DEH等。這里的字母不區(qū)分大小寫,在C語言編程時要寫成“0xa,0xde”,在數(shù)的最前面加上“0x”表示該數(shù)為十六進(jìn)制數(shù)。0008811A33B44C55D66E77F 器中最小的單位。比位大的單位是字節(jié)(B)81B=8b“/”用在整數(shù)除法中時,10/3=3,求模運(yùn)算也是在整數(shù)中,如10對3求模即10當(dāng)中含有多少個整數(shù)的3,即3個。當(dāng)進(jìn)行“%”求余運(yùn)算,也是在整數(shù)中,如10%3=1,即10當(dāng)中含有整數(shù)倍的3取掉后剩下的數(shù)即為所求余數(shù)。 含 “︱ “》 “《 如果用C語言編寫程序,則擴(kuò)展名必須為.c;如果用匯編語言編寫程序,則擴(kuò)展名必須為 意義:把單片機(jī)內(nèi)部地址0x80處的這個寄存器重新起名叫P0意義:C51中常用的頭文件:reg51.h,reg52.h,math.h,stdio.h,ctype.h,stdlib.h,absacc.h,intrins.h,reg52.h頭文件的作用:在使用〈〉包含頭文件時,編譯器先進(jìn)入到軟件安裝文件夾處開始搜索這個頭文件,也就是Keil\C51\INC#include sbit //單片機(jī)P1口的第一void { }件,英文全稱為binary,這兩種文件可以通過軟件相互轉(zhuǎn)換,其實(shí)際內(nèi)容都是一樣的。鎖存器74HC573引腳DQLHHHLHLLLLXHXXZOE(OUT 1Q- LE(LATCH void {} 低電平;0,2,4,6,8對應(yīng)的二進(jìn)制是高電平1,二進(jìn)制從右往左數(shù) 在C語言中我們一般把“0”認(rèn)為是“假”,“非0”認(rèn)為是“真”,也就是說,只要不是0就是真,所以1,2,3等沒有,那么我們就可以直接將大括號也不寫,再如“while(1while()會把跟在它后程序時,如果while()內(nèi)部只有一條語句,我們就可以省去大括號,而直接將這條語句跟在它的后面。程序指針就要加1,程序指針就指向下一條要執(zhí)行的指令。 voidmain() { }88-)-)unsigned) long 知識點(diǎn):for語句unsignedchar 03i1,我們分析執(zhí)行過程:不用寫出來),因?yàn)閒or內(nèi)部語句為空,即什么也不執(zhí)行。unsignedchari, #defineuintunsigned sbit uint void { { }}格式:#define新名稱原內(nèi)容“unsignedinti,j;”,取而代之的是“uinti,j;”,方便以后在程序中直接寫簡短的新名稱,而不必每次都寫煩瑣的由12個時鐘周期(6個狀態(tài)周期)組成。點(diǎn),然后在下面“l(fā)ed1=1;”所在行以同樣方式插入另一個斷點(diǎn),這兩個斷點(diǎn)之間的代碼就是這個兩級for嵌套語句。型不同,單片機(jī)運(yùn)行時所需時間就不同),內(nèi)層for語句中變量恒定值為110時,外層for中變量為多少,這個for嵌套前子函數(shù),方法如下:將返回值特性、函數(shù)名及后面的小括號完全,若是無參數(shù)函數(shù),則小括號內(nèi)為空;若括號的后面必須加上分號“;”。當(dāng)子函數(shù)寫在主函數(shù)前面時,不需要,因?yàn)閷懞瘮?shù)體的同時就已經(jīng)相當(dāng)于了函數(shù)本身。通俗地講,子函數(shù)的目的是為了編譯器在編譯主程序的時候,當(dāng)它遇到一個子函數(shù)時知道有這樣一個子函數(shù) #defineuintunsigned sbit void void { { }}void {uinti, }延時以亮200ms滅800ms的方式閃動,完整程序代碼如下:(帶參數(shù)函數(shù)的寫法) //52系列單片機(jī)頭文件#defineuintunsignedint sbit void void { { }}void {uinti, }:中原來的數(shù)據(jù)丟棄,(在一行二進(jìn)制里,如:,左邊一端為最0,右邊一端為最低位1)最低位補(bǔ)0,其他位循環(huán)左移:最(在一行二進(jìn)制里,如:11101010,左邊一端為最1,右邊一端為最低位0)移入最低位,其他循環(huán)右移:最低位移入最(在一行二進(jìn)制里,如:01011110,左邊一端為最0,右邊一端為最低位0),其他 #defineucharunsigned uchar void { { }} //52系列單片機(jī)頭文件 #defineuintunsignedint #defineucharunsigned void uchar void { { 500 }}voiddelayms(uint{uinti,j; //指定i,j為無符號整型 }aaaaaa0xfe,二進(jìn)制為,執(zhí)行此函數(shù)時,它將循環(huán)左移一位后為0xfd,0xfdaawhile(1)中的最后一條語句執(zhí)行完后,將返while(1aa0xfd 法),則該位為1,否則為0。 AC為1,否則為0。P-----ACCACC1(如B1),P1。unsignedcharcodetable[]={編碼定義方法與C語言中的數(shù)組定義方法非常相似,不同的地方就是在數(shù)組類型后面多了一個code關(guān)鍵字,codeunsignedchartable引腳和公共端(位選)各需要1個74HC573鎖存器,所以總共需要的元件有:6個數(shù)碼管LED1-LED6,1個STC89C52單片機(jī),274HC573鎖存器U1、U2,110KΩ(P0口提供上拉電阻)P1。8(公共端)。在操1P00xFE111111108,那么只在h sbit sbit void { //打開U2 //關(guān)閉U2 //打開U1 //關(guān)閉U1 }60F0.5s,循環(huán)下去。程序代碼如下:(uchar循環(huán)用;uint #defineucharunsignedchar #defineuintunsignedintsbit sbit ucharnum; ucarcodetable[]={ void { { { //打開U1 //關(guān)閉U1 }}}voiddelayms(uint {uint }6,0.5s,關(guān)閉它后再來顯示第一個數(shù)碼管,一直循環(huán)下去。程序代碼: #defineucharunsignedchar #defineuintunsignedintsbi sbi ucharcode void void{ { //原來段選數(shù)據(jù)通過位選鎖存器造成(U2鎖存端) //送位選數(shù)據(jù),二進(jìn)制11111110 }}voiddelayms(uint{uinti,j;}處理(中斷發(fā)生);CPU停止當(dāng)前的工作(中斷響應(yīng)|),轉(zhuǎn)去處理B(中斷服務(wù)A,處理服務(wù)B);待CPU將B處理完畢后,再回到原來A被中斷的地方繼續(xù)處理A(中斷返回),這一過程稱為中斷。526(CPU):INT0外部中斷0,P3.2端口線引入,低電平或下降沿引起。INT11,由P3.3T11T1T22T2中斷 012345知識點(diǎn):中斷允許寄存器中斷允許寄存器用來設(shè)定各個中斷源的打開和關(guān)閉,IEA8H,位地址(由低位到中斷允許寄存器- 位地址AFH--ADHACHABHAAHA9H 優(yōu)先級寄存器IP(InterruptPriority)中斷優(yōu)先級寄存器在特殊功能寄存器中,字節(jié)地址為B8H,位地址(由低位到)分別是B8H~BFH,機(jī)復(fù)位時IP全部被清0,各位定義見表:中斷優(yōu)先級寄存器-----_ 工作方式和功能;TCONT11/12)NTcyt。來確定定時器的工作方式及功能選擇。單片機(jī)復(fù)位時TMOD全部被清0。其各位的定義如下表:位序號D7D6D5D4D3D2D1位符號GATEC/TM1M0GATEC/TM1 就需要用軟件清0。0
TF00TF1。IE11請求標(biāo)志。IT11IE00IE1void()interrupt中斷號using工作組{}如:voidT1_time()interrupt { }工作寄存器中的哪一組,C51012345void #defineucharunsignedchar #defineuintunsignedint sbitled1=P1^0; //LED1對就的單片機(jī)P1口的第1位ucharnum; //一個num函數(shù)變量void{ //設(shè)置定時器0為工作方式1(M1M0為01,即M1M0--工作方式選擇位) /*求余,裝初值11.0529M晶振定時50ms數(shù)為45872*/ }voidT0_time()interrupt {TH0(65536- /*重裝初值,求模(65536-45872)/256=76,裝入 /*求余=76*256-(65536-45872)=208,裝入TL0;TL0在機(jī)器周期的作用下開始加1計數(shù), /*num每加1次判斷一次是否到20次(20次*50ms=1000ms=1s) {}}
CPU申請中斷。因此,溢出一次共需要65536us,約等于65.5ms.(也就是說,中斷一次需要65536us)設(shè)置為定時器模式時,加1計數(shù)器是對內(nèi)部周期計數(shù)(1個機(jī)器周期等于12個振蕩周期,即計數(shù)器頻率為晶振頻率的1/12)。計數(shù)值N乘以機(jī)器周期Tcy就是定時時間t。(由溢出時計數(shù)器的值減去計數(shù)初值才是加1計數(shù)器; //單片機(jī)52系列頭文件#defineucharunsignedchar #defineuintunsignedint sbit sbit sbitled1=P1^0; //定義LED1在P1口的第1位ucharcodetable[]={ voiddelayms(uint); voiddisy(uchar,uchar); ucharnum,num1,num2,bai,shi,ge;void{ //設(shè)置01為工作1(00010001)TH0=(65536-45872)/256;*求模;50ms0(19664=4CD0H)*/TL0=(65536-45872)%256;/*求余;4CH=76裝入TH0,D0H=208TL0*/TH1=(65536-45872)/256;/*求模;50ms1(19664=4CD0H)*/TL1=(65536-45872)%256;/*求余;4CH=76TH1,D0H=208TL1*/ {disy(bai,shi,ge);/*數(shù)碼管的百位數(shù)、十位數(shù)、個位數(shù)循環(huán)}}voiddisy(ucharbai,ucharshi,uchar { //延時100ms //延時100ms }voiddelayms(uint {uint }voidT0_time()interrupt { { }}voidT1_time()interrupt { { //百位和十位,求余運(yùn)算,求出num中除去整數(shù)倍100的后余數(shù) }}單片機(jī)的輸入控制用小彈性按鍵較好,單片機(jī)檢測按鍵的原理是:單片機(jī)的I/O口既可作為輸出也可作為輸入使用,當(dāng)檢測按鍵時用的是它的輸入功能;我們把按鍵的一端接地,另一端與單片機(jī)的某個I/O口相連,開始時I/O動每秒加1,再次按下key4鍵,數(shù)值停止自動加1,保持顯示原數(shù)。 #defineucharunsignedchar #defineuintunsignedint sbit sbit sbit sbit sbit sbitwela=P2^7; //位選端在P2口的第7位ucharcodetabl[]={ voiddelayms(uint); ucharnumt0,num; voidisy(uchar {uchar }voiddelayms(uint {uinti,j; //延時xms}void { //設(shè)置0為工1(00000001)TH0=(65536-45872)/256;//求模,19664=4CD0H,76=4CH裝入TH0TL0=(65536-45872)%256//求余,D0H=208裝入TL0中 }void { { { }} { //去抖動延時20ms { //num自減1 }} { //去抖動延時20ms { }} { { }}}void { {}}voidT0_time()interrupt {{}} #defineucharunsignedchar #defineuintunsignedint sbit sbitwela=P2^7; ucharcodetabl[]={ voiddelayms(uint {uint //定義延時變量i }voiddisy(uchar { }void {uchartemp //P3口當(dāng)前狀態(tài)值賦給臨時變量temp,用于后面計算 //與運(yùn)算(11111110和11110000的與運(yùn)算) { { {case case0xde: //11011110
case0xbe: //101111110case0x7e: //1111110} { //不斷地P3口數(shù) } }} {{case0xed: //11101101case0xdd: //11011101case0xbd: //10111101case0x7d: //1111101} {}}} {{{case0xeb: //11101011case0xdb: //11011011case0xbb: //10111011case0x7b: //1111011} {}}} {{{case0xe7: //11100111case0xd7: //11010111case //1011case //111}{}}}void { { }} { {
語句2;… 語句 }不需要break語句。
我們在設(shè)計產(chǎn)品時,若用到A/D和D/A,一般這些都提供獨(dú)立的模擬地(AGND)和數(shù)字地(DGND)引腳,為了輸出的模擬電壓正比于輸入的數(shù)字量Dn,從而實(shí)現(xiàn)了從數(shù)字量到模擬量的轉(zhuǎn)換。n8用蜂鳴器分別警報一聲,完成整個周期時間控制在5s左右,循環(huán)變化。 //52系列頭文件#defineucharunsignedchar #defineuintunsignedint //宏定義延時變量sbitdula=P2^6; //U1鎖存器的鎖存端sbit sbit DAWRsbit sbitbeep=P2^3; voiddelayms(uintxms) {uint //延時xms}void {ucharval,flag; //設(shè)置P0的輸入數(shù)據(jù)為0 { { { } } { { } }}} 這4個電容要盡量靠近MAX232,以提高搞干擾能力。實(shí)際應(yīng)用中,1N2可直接連接TTL/CMOS電平的51單片機(jī)串行發(fā)送端TXD;R1OUT,R2OUT可直接連接PC機(jī)的RS-232口的接RXD;T1OUT,T2OUT可直接PCRS-232串口RX;R1I,R2IN可直接連接PCRS-232口的發(fā)送端TXD。如I(T2IN連接單片機(jī)的發(fā)送TXDPCRS-232接收RXD要對應(yīng)接T1OUT(T2OUT),同時,R1OUT(R2OUT)連接單片機(jī)的RXD引腳,PC機(jī)的RS-232發(fā)送端TXD對應(yīng)接R1IN2N)引腳。方式:SM0SM1=000的波特率=fosc/12;同步移位寄存器方式(通常用于擴(kuò)展I/O)SM0SM1=011=(2SMOD/32)*(T110(8)SM0SM1=10,方式2的波特率=(2SMOD/64)*fosc;11位異步收發(fā)(9位數(shù)據(jù))SM0SM1=113(2SMOD/32)*(T1溢出率)11(9)fosc為系統(tǒng)晶振頻率,通常為12MHz或11.0592MHz;SMOD是PCON(PowerDown)電源管理寄存器的最(D7);T1溢出率T1溢出的頻率(只要算出T1一次所需要的時間T,那么T倒數(shù)1/T。)IDL=0:單片機(jī)處于正常工作狀態(tài)。(IDL=idle)C1.1輸出一行信息: /*standardinput&output的縮寫,意思是有關(guān)標(biāo)準(zhǔn)輸入輸出的信息*/void {printf(“ThisisaC //是換行符,實(shí)現(xiàn)換行;即在輸出“ThisisaCprogram.”后回車行。 standardinput&output.headvoid {inta,b,sum; /*定義變量a和b,指定a和b為整型(int)變量*/ /*賦值語句,使a和b的值分別為123和456*/ /*使sum的值為a+b*/printf(“sumis 1.32 standardinput&output.headvoid {intmax(intx,int /*對被調(diào)用函數(shù)ma的int 是輸入ab的值,&a,&b中的“&”的含義是“取地址”*/ }intmax(int,x,int {int if(x>y)z=x; elsez=y; }ifxispositivethen 若x為正 printx 輸出x 置t的初值為1 置t的初值為print- 輸出- while 當(dāng)i≤5,執(zhí)行下面操{t*1 print 輸出t inta,b; (指定變量a、b為整型)unsignedshortc,d; longe,f; (指定變量e、f為長整型) void{inta,b,c,d; unsignedu; /*指定u為無符號整型變量*/ /*printf(”a+u=%d,b+u=%d”\n,c,d);*輸出變量c,d(將“a+u=”原樣輸出,“%dcdn”執(zhí)} void {floata,b; //浮點(diǎn)變量只能保證有效數(shù)字是7位 含 char a1=’c’;b1=’d’; //standardinput&output.head標(biāo)準(zhǔn)輸入輸出頭文件voidmain() {char //字符c1的ASCII代碼為十進(jìn)制數(shù)97,即給c1賦值為97 //字符c2的ASCII代碼為十進(jìn)制數(shù)98,即給c2賦值為98 }#include<stdio.h>//standardinput&output.headvoid }
char 如:printf(“howdoyoudo.”); 不能 int float charc inta,b,c=5; /*表示a,b,c為整型變量,但只對c初始化,c的初值為5*/inta=3,b=3,c=3; /*表示a,b,c的初值都是3*/inta=3; inta; //指定a為整型變量 inta,b,c=5; inta,b,c; /*賦值語句,將3賦給a*/ standardinput&output.headvoid {unsigned //指定a為無符intb=-1; }等價于等價于 表達(dá)式1,表達(dá)式2 值,所以逗號表達(dá)式“3+5,6+8”的值為14。 例:if(x>y)z=x;elsez=y; puts(輸出字符串)、gets(輸出字符串) void {char //指定a,b,c為字符 a,b,cBOY換行。} 例 例如:printf(“%4d,%4d”,ab);若a=123,b=123456,則輸出結(jié)果為└┘123,123456 例:long //定義a為長整型變量 x格式符:以十六進(jìn)制數(shù)形式輸出整數(shù).例:printf(”%8o”,a); u格式符:用來輸出unsigned型數(shù)據(jù),即無符號數(shù),以十進(jìn)制整數(shù)形式輸出: //”%c”是格式符,c是變量名s格式符:用來輸出一個字符串。例 字符串小于m,,則左補(bǔ)空格。 //standardinput&output.headvoid{floatx,y;(double}例:用scanf函數(shù)輸入數(shù)據(jù): //standardinput&output.headvoid {int “&a、&b、&c”:“&”是“地址運(yùn)算符”,&a指a在內(nèi)存中的地址。a.能被4整除,但不能被100整除,如2008;b.能被4整除,又能被400整除,如2000。#include<stdio.h>//standardinput&output.head標(biāo)準(zhǔn)輸入輸出頭文件voidmain() {intyear,leap; /*指定year,leap為整型變量*/ /*表示要按十進(jìn)制整數(shù)形式輸入year數(shù)據(jù)*/{{}
}printf(“aleap} 語句標(biāo)號:由字母、數(shù)字和下劃線組成,其第一個字符必須為字母或下劃線;不能用整數(shù)來用while void {int /*指定i,sum=0為整型函數(shù) i /*循環(huán)設(shè)定值,即i只在<=100數(shù)值內(nèi)循環(huán){ //將sum+i所得的值賦給 /*“i++”,則i的值始終不改變,循環(huán)永不結(jié)束conte語句:其作用為結(jié)束本次循環(huán),即跳過循環(huán)體中下面尚未執(zhí)行的語句,接著進(jìn)行下一次是否執(zhí)行循環(huán)的判定。break void {int {if(n%3= 的地址}}類型說明符數(shù)組名[常量表達(dá)式 如:inta[10]//定義了一個整型號數(shù)組數(shù)組名為a,此數(shù)組中有10個元素 void {int //0-9for //換行
例:floata3*4(34列)的數(shù)組,b5*10(510列)二維數(shù)組的初始化 int 100 int 賦初值后數(shù)組各元素為:500 9001000011 //輸入輸出標(biāo)準(zhǔn)頭void //主函{charc[10]={‘I’,a’,’ma //定義數(shù)組長度為10個字//或charc[]={“Iama /*數(shù)級c的長度不是10而是11;因?yàn)樽址A康淖詈笥?*系統(tǒng)加上一個”字符串結(jié)束標(biāo)志int //整型函數(shù)變量 //定義0-9 c[i]Iama//或 //用來輸出一個字符 //換行回}串“Iamaboy”的,字符串中的字符是逐個存放到數(shù)組元素中的;字符串的實(shí)際長度與數(shù)組長度相等. //輸入輸void //主函{chardiamond[][5]={{***’},{‘****’},{*’int //賦i,j整型變 }字符數(shù)組的輸入輸逐個字符輸入輸出.用格式符”%c如:charc[]={“”}; );/ void {charstring[]=(或*string=)”Ilove /*賦數(shù)組名string(代表字符數(shù)組的首元素的地址)的值為”Ilove /*%S用來輸出一個字符串,并換行,將string的地址里的內(nèi)容以字符串的形式輸出*/ //運(yùn)行結(jié)果:Ilove將字符串a(chǎn)為字符串 //標(biāo)準(zhǔn)輸入輸出void //主函{chara[]=”Iama //賦初int //i //在for語句中,先檢查*(a+1)是否為’\0’ //如果不等于’\0’,表示字符串尚未處理完,就將*(a+1)的值賦給 //再將’\0’給 //將數(shù)組名a地址里的內(nèi)容以字符串printf(“stringb //b //在for語句中,先檢查b[i]是否為’\0’ //將數(shù)組名b[i]地址里的內(nèi)容以一個字符(c格式符:用來輸出一個字符) }
stringais:Iamaboy.stringbisabo如:charstr[]={“ \nBeijing”};
即一般利用gets函數(shù)的目的是向字符數(shù)組輸入一個字符串。把字符2接到字符1的后面,結(jié)果放在字符數(shù)組1中,函數(shù)調(diào)用后得到一函數(shù)值---字符數(shù)1的地址。例如:charstr1[30]={“People’sRepublic charstr2[]={“ //定義數(shù)組str2的字符 People’sRepublic說明:1.字符數(shù)組1必須足夠大,以便容納連接后的新字符串;即字符數(shù)組1必須定義足夠的長連接前兩個字符串的后面都有’\0’,連接時將字符串 后面的’\0’取消,只在新串最后保留’\0’函數(shù):在C語言中,子程序的作用是由函數(shù)來完成的。一個C程序可由一個主函數(shù)和若干個其它函數(shù)構(gòu)成。由主函數(shù)調(diào)用vidmi()定義函數(shù)的類型為void,意為函數(shù)無類型,即無函數(shù)值,也就是說,執(zhí)行這個函數(shù)后不會把任何值帶回an {}有參函數(shù)類型標(biāo)識 函數(shù)名(形式參數(shù)表 形參{語句部}例如intmax(intx,int /*兩個形式參數(shù)x和y,它們都是整型{intz; /*函數(shù)體中的部分,指定z為整型*/z=x>y?x:y; /*如果需要從被調(diào)用函數(shù)帶回一個函數(shù)值(供主調(diào)函數(shù)使用 宏定義:用一個指定的標(biāo)識符(即名字)來代表一個字符串。#define標(biāo)識符字符串如:#definePI ”這個字符串 #defineR #definePI #defineL //L#defineSvoid /*把L,S變量的地址里的內(nèi)容以f格式符(用來輸出實(shí)數(shù)(包括單、雙精度),以小數(shù)形式輸出)輸出 #definePR #defineNL #defineD“%d” #defineD1DNL#defineD2DDNL#defineD3DDDNL#defineD4DDDDNL#defineS //s格式符:用來輸出一個字符void {int charstring[]=””; //把string變量的地址里的內(nèi)容以s格式符(用來輸出一個字符串)輸出}1 #ifdef如:#ifdef /*假如計算機(jī)A已被定義過,則編譯下程序段#defineINTEGER_SIZE 程序段 #defineINTEGER_SIZE 它的作用是若程序所指定的標(biāo)識符已經(jīng)被#defing命令定義過,則在程序編譯階段編譯程序段1,否則編譯程序段2。其中else部分可以沒有,即 #ifdef標(biāo)識符#ifndef2。#if 指針---由于通過地址能找到所需的變量單元,地址指向該變量單元;因此在C語言中,將地址形象化地稱為“指針”,意如 int int /*將變量i的地址存放到指針變量pointer_1中,因此pointer_1就“指向”了變量i*/ /*將變量j的地址存放到指針變量pointer_2中,因此pointer_2就“指向”了變量j*/int int p=&a[0];或P=a /*把a(bǔ)[0]元素的地址賦給指針變量P,也就是使P指向a數(shù)組的第0號元素;C語言規(guī)定數(shù)組名int int /*所以,P+i是指向a數(shù)組的第i個元素,a代表數(shù)組首元素的地址,它實(shí)際地址為 a+i*d=1000+3*4=1012,然后從1012地址所指向的float型單元取出元素的值。aa00110a[1][0]12a[1][2]12a[1][2] #define {int /*a34a[3][4]的值 //00 //101 //10 //20 //10} void {int int /*P為指向整型變量的指針變量;定義i為整型變量 }
void {voidcopy_strin
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個人反擔(dān)保合同規(guī)范范本-設(shè)備租賃專用2篇
- 房地產(chǎn)市場調(diào)查與分析
- 2025年度鋼構(gòu)工程風(fēng)險評估與控制合同
- 小學(xué)生數(shù)學(xué)思維能力的提升方法
- 金融市場的變化與對公客戶的應(yīng)對策略
- 二零二五年度蟲草產(chǎn)品研發(fā)與市場拓展合同4篇
- 二零二五年度蟲草收購與銷售一體化合同4篇
- 2025年度環(huán)保設(shè)施建設(shè)合同履行的環(huán)境治理擔(dān)保協(xié)議3篇
- 2025年度個人旅游預(yù)付款延期退還協(xié)議4篇
- 跨領(lǐng)域?qū)W生綜合素養(yǎng)提升的實(shí)踐探索
- 危險品倉儲危險廢物處置與管理考核試卷
- 2024版汽車融資擔(dān)保合同范本版B版
- 浙江寧波鎮(zhèn)海區(qū)2025屆中考生物對點(diǎn)突破模擬試卷含解析
- 湖南省長沙市2025年新高考適應(yīng)性考試生物學(xué)模擬試題(含答案)
- 工業(yè)自動化設(shè)備維護(hù)保養(yǎng)方案
- 《中醫(yī)心理學(xué)》課件
- envi二次開發(fā)素材包-idl培訓(xùn)
- 2022年上海市初中語文課程終結(jié)性評價指南
- 醫(yī)院手術(shù)室醫(yī)院感染管理質(zhì)量督查評分表
- 心內(nèi)電生理導(dǎo)管及器械
- 保潔服務(wù)崗位檢查考核評分標(biāo)準(zhǔn)
評論
0/150
提交評論