C語言中的指針和數(shù)組幾乎可以互換,數(shù)組名可認為是一個常量指針,指針可用來完成涉及數(shù)組下標的操作。
e.g.int * nPtr;
int Array[size];
(1)數(shù)組與指針等價
nPtr = Array;或者nPtr = &Array[0];
(2)引用數(shù)組元素Array[3]
nPtr[3]或者*(nPtr+3)或者*(Array+3)
其中,nPtr[3]為指針下標表示法。
(3)e.g.數(shù)組拷貝
//用數(shù)組表示法把s2拷貝到s1中
void copy1(char *s1,constchar *s2)
{
int i
for(i=0;s1[i]=s2[i];i++);
}
//用指針表示法把s2拷貝到s1中
void copy1(char *s1,constchar *s2)
{
for(;* s1=* s2;s1++,s2++);
}
(4)指針數(shù)組
char * suit[4]={"zhonghua","renmin","gonghe","guojia"};
//char * 表示suit數(shù)組的每一個元素都是指向char類型的指針,即suit數(shù)組中存儲的是4個指針。
//等價于 char suit[4][9]={"zhonghua","renmin","gonghe","guojia"};
//二維數(shù)組必須設(shè)置相同的列數(shù),因此指針數(shù)組更具有靈活性。
(5)數(shù)組指針
int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};
int (*p)[4];
p=a;
*(*(p+i)+j);//表示a[i][j]的值
void search(float (*p)[4],int n);//多維數(shù)組的指針作為函數(shù)參數(shù)
search(a,2);//函數(shù)調(diào)用
(6)指向指針的指針
e.g. main()
{
char *name[]={"Beijing","Chongqing","Shanghai","Tianjin","Shijiazhuang"};
char **p;
int i;
for(i=0;i<5;i++)
{ p=name+i;
printf("%s\n",*p);//如果是**p,表示一個字符。
}
}
舉例:洗牌和發(fā)牌程序
#include
#include
#include
void shuffle(int [][13]);//為什么參數(shù)中數(shù)組的第二個下標必須有
void deal(const int [][13],const char * [],const char * []);
main()
{
int deck[4][13]={0};
constchar * face[4]={"Hearts","Diamonds","Clubs","Spades"};//指針數(shù)組
constchar * suit[13]={"one","two","three","four","five","six","seven",
"eight","nine","ten","eleven","twelve","theteen"};
srand(time(NULL));
shuffle(deck);
deal(deck,face,suit);* face[4]和* suit[13]數(shù)組必須定義成const,否則在此出現(xiàn)錯誤,
//錯誤類型:不能把“* char[]”轉(zhuǎn)換成“const * char[]”
return 0;
}
void shuffle(int wDeck[][13])
{
int row,col,i;
for(i=1;i<53;i++)
{
row=rand()%4;
col=rand()%13;
while(wDeck[row][col]!=0)
{
row=rand()%4;
col=rand()%13;
}
wDeck[row][col]=i;
}
}
void deal(const int wDeck[][13],const char * wFace[],const char * wSuit[])
{
int i,row,col;
for(i=1;i<53;i++)
for(row=0;row<4;row++)
for(col=0;col<13;col++)
{
if(wDeck[row][col]==i)
printf("%5s of %-8s%c",wFace[row],wSuit[col],i%2==0?'\n':'\t');
}
}
上一篇:I2C總線的工作原理與在51單片機中的應用
下一篇:C51中斷應用interrupt 和 using
推薦閱讀
史海拾趣
作為一家在電子行業(yè)具有影響力的企業(yè),Emulation始終關(guān)注社會責任和可持續(xù)發(fā)展。公司積極參與各種公益活動,為當?shù)厣鐓^(qū)的發(fā)展做出了貢獻。同時,Emulation還注重環(huán)保和節(jié)能,致力于推動綠色電子產(chǎn)品的設(shè)計和生產(chǎn)。這些舉措不僅提升了公司的社會形象,還為公司的長期發(fā)展奠定了堅實的基礎(chǔ)。
在追求技術(shù)創(chuàng)新和市場拓展的同時,DEMMELPRODUCTS公司始終將品質(zhì)管理放在首位。公司建立了嚴格的質(zhì)量管理體系,從原材料采購到產(chǎn)品生產(chǎn)的每一個環(huán)節(jié)都進行嚴格的質(zhì)量控制。此外,公司還積極引入先進的生產(chǎn)設(shè)備和技術(shù),不斷提高生產(chǎn)效率和產(chǎn)品質(zhì)量。通過持續(xù)改進和優(yōu)化,DEMMELPRODUCTS公司的產(chǎn)品品質(zhì)得到了客戶和行業(yè)的廣泛認可。
隨著技術(shù)的不斷積累和創(chuàng)新,上海超致在功率半導體領(lǐng)域取得了重大突破。公司成功推出了全球首款量產(chǎn)SJ-IGBT產(chǎn)品,這一產(chǎn)品具有電流密度大、綜合器件性能優(yōu)的特點,在硅基成本下實現(xiàn)了性能的顯著提升。此外,上海超致還不斷拓寬產(chǎn)品線,產(chǎn)品廣泛應用于太陽能微逆變器、車載OBC、充電樁、UPS電源等多個領(lǐng)域。這些產(chǎn)品的推出不僅滿足了市場的需求,也進一步提升了公司的市場競爭力。
在發(fā)展過程中,如韻始終關(guān)注社會責任和可持續(xù)發(fā)展問題。公司積極參與社會公益活動,為弱勢群體提供幫助和支持。同時,如韻注重環(huán)保和節(jié)能減排工作,在產(chǎn)品設(shè)計和生產(chǎn)過程中嚴格遵守相關(guān)環(huán)保法規(guī)和標準。
為了推動行業(yè)的可持續(xù)發(fā)展,如韻還積極參與行業(yè)交流和合作活動,與同行分享經(jīng)驗和資源。通過與產(chǎn)業(yè)鏈上下游企業(yè)的緊密合作和協(xié)同創(chuàng)新,如韻為推動電子行業(yè)的綠色發(fā)展和技術(shù)進步做出了積極貢獻。
在碳化硅材料技術(shù)取得突破后,世紀金光迅速將這一技術(shù)應用于功率器件的研發(fā)與生產(chǎn)。公司成功開發(fā)出額定電壓650-1700V、額定電流5-100A的碳化硅肖特基二極管(SBD)以及額定電壓650-1200V、額定電流20-100A的金屬-氧化物半導體場效應晶體管(MOSFET)。這些高性能的功率器件在電源PFC、充電樁充電模組、光伏逆變器、特種電源等領(lǐng)域得到了廣泛應用,為客戶提供了高效、可靠的解決方案。
世紀金光(CENGOL)公司自創(chuàng)立之初,就立志要在半導體領(lǐng)域?qū)崿F(xiàn)自主創(chuàng)新。經(jīng)過無數(shù)次的實驗與嘗試,公司的研發(fā)團隊成功攻克了高純碳化硅粉料提純技術(shù)。這一突破不僅使世紀金光在碳化硅材料領(lǐng)域取得了領(lǐng)先地位,更為后續(xù)產(chǎn)品的研發(fā)奠定了堅實基礎(chǔ)。隨著技術(shù)的不斷完善,世紀金光成功推出了6英寸碳化硅單晶,并實現(xiàn)了量產(chǎn),這一成就標志著公司在碳化硅材料領(lǐng)域取得了重要進展。
請教高手,芯片半成品(wafer),在工控機上安裝采集卡,測試其頻率(30k左右)、占空比(標準方波),怎樣測量?哪款采集卡比較合適?希望能和大俠們交流請教一下。 俺的qq號:308676575 。 &nbs ...… 查看全部問答∨ |
做個智能充電器,用到MAX1898,但是PDF上要用的NDT454P P溝道耗盡型MOS管和D80-004肖特基二極管哪里都買不到,也不會計算參數(shù),故希望大蝦給找一下替代產(chǎn)品,最好說明一下原因,謝謝! 圖如下… 查看全部問答∨ |
有一開發(fā)板,可能activesync同步,向其中復制程序,但再上電后,就程序就沒有了!求教如何用PB修改CE.net的BSP包,能讓文件永久保存,象PC有磁盤一樣,注:不是將程序固化到包中。而且加個文件系統(tǒng),可以隨時復制,刪除等管理文件,并永久存儲。這 ...… 查看全部問答∨ |
|
WINCE播放高位速的視頻文件,系統(tǒng)好卡,似乎是系統(tǒng)帶寬不足,望各位支招啊 如題,播放高位速的視頻文件有時候會黑一下屏,然后又恢復回來,系統(tǒng)為WINCE5.0,處理器是2440,播放器使用TCPMP,其中分頻比為1:3:6.刷LCD的點時鐘為33M,估計是很多帶寬都被用來刷頻了,望各位支招啊… 查看全部問答∨ |
|
小弟最近想學習寫一個監(jiān)控攝像頭云臺解碼器的程序。但不不知道如何才能入手。 不知道高手有何建議?或者有程序給小弟參考一下也可以。不勝感激?!? 查看全部問答∨ |
如果標準輸出重定向到文件, 如果磁盤滿了系統(tǒng)卻不提示. 我把系統(tǒng)標準輸出重定向到文件, 問題出在:當系統(tǒng)磁盤滿了, 不能再寫入時, 程序如何獲知這種情況? 謝謝… 查看全部問答∨ |
PID調(diào)節(jié)遇到的問題,高手來指點一下. 本帖最后由 dontium 于 2015-1-23 13:26 編輯 我做的速度+電流雙閉環(huán)PID調(diào)節(jié)程序,速度外環(huán),電流內(nèi)環(huán),在雙環(huán)調(diào)節(jié)的時候出現(xiàn)這樣的問題: 1: 調(diào)節(jié)反饋速度值,在達到臨界點的時候(臨界點就是誤差值在0點附近)這時整個PID的輸出不穩(wěn)定, 觀察此時輸出 ...… 查看全部問答∨ |
DigitalSignalProcessor是對模擬信號變成數(shù)字信號的高速處理。其處理器處理速度為普通的5-10倍。在數(shù)字電話,調(diào)制解調(diào)器技術(shù)(mode),個人計算機(顯卡),消費電子。現(xiàn)在在DSP市場占有率的老大是TI(45%),老二是朗訊(20%),老三是ADI和摩托羅 ...… 查看全部問答∨ |
設(shè)計資源 培訓 開發(fā)板 精華推薦
- 孚能科技全固態(tài)電池中試線年底建成,能量密度超400Wh/kg
- 比亞迪新專利:電池尺寸不變,續(xù)航大幅提升
- 豐田子公司37億大連建廠首次在中國生產(chǎn)純電汽車電池
- 博泰車聯(lián)網(wǎng)沖刺港股:上海灘走出的汽車智能化隱形冠軍
- 從自動駕駛到具身智能,激光雷達緣何一邊被嫌棄,一邊被追捧?
- 軟件定義車輛改變汽車行業(yè)的3種方式
- 混合動力汽車也是超級跑車:強調(diào)性能,而不是里程
- 人形機器人風口下,六維力傳感器成為國產(chǎn)廠商“卡位”關(guān)鍵點
- AURIX? TC4x虛擬化技術(shù)詳解
- 從荔枝的“鮮和煎”,看英特爾銳炫Pro B60的AI空間折疊魔術(shù)