1樓:_編號
個人比較認同於一樓的答案。
c語言中有兩種方法可為型別建立別名:一種是前處理器,也就是常說的巨集。另一種就是typedef來建立別名。
typedef的通用格式為typedef 型別名 型別別名;
那麼在你舉的這個例子typedef struct playerview *playerview; 當中struct playerview就是型別名,說明為playerview型結構體,而*playerview則為playerview型結構體指標的別名。也就是說以後playerview a;也就相當於playerview *a;
至於結構體這種構造資料型別,個人感覺就是封裝了一些基本資料型別或是構造型別在裡面,無非就是多了些層次結構,就好像乙個旺旺大禮包,你要決定買個什麼樣的大禮包,這是對型別的定義,買十了塊的,這就是對結構體變數宣告,開啟包拿出小饅頭,那就是對結構體變數的引用了,看了之前的乙個結構體問題,覺得對你應該有點幫助也發來給你吧。
幾種結構體定義的區別:
structtest1;
好,定義了 結構 test1,和 可以在語句裡用了。
2) struct test test1;
好,定義了 結構 test1,和 可以在語句裡用了。
與 1 比,1省寫 了 test
3) typedef struct testint x; int y;
text1,text2;
只說了 這種結構 的(型別)別名 叫 text1 或叫 text2真正在語句裡用,還要寫:
text1 test1;
然後好用。或寫 text2 test1;
然後好用。4)typedef struct test1;
也同 (3)一樣,還要 寫:
test1 my_st;
才能用 my_ 和 my_
2樓:井鈺
其實應該等價於下面的語句。
即。typedef struct playerview;
playerview *playerview;
第一條語句,意思是說定義乙個結構體型別的同義詞,也就是說,playerview等價於struct,即。
struct a;等價於 playerview a;
意思都表示定義乙個結構體變數a
至於第二條語句,playerview *playerview;
它的意思水說,定義乙個指向playerview型別的指標playerview
而playerview型別也就是struct型別,換句話說,就是。
定義乙個指向結構型別的指標playerview.二者是等價的。
至於結構嗎,就是這樣的。
struct student
char name[20];
long int order,id;
short int age;
int score[10];
這個是結構的定義,訪問成員的話,是先定義乙個結構體變數,然後才可以訪問結構的成員,例如。
定義結構體變數,即如。
student m;
/通過點操作符來訪問成員age
基本就是這樣了,你可以寫個程式試一下。這有助於你理解。
3樓:網友
這是建立乙個playerview *型的變數別名,名字叫做playerview。至於struct關鍵字,是為了強調playerview是乙個結構體。在此時,struct是可寫可不寫的,寫上,主要也是為了**清晰的考慮吧。
4樓:理工的和尚
typedef是將後面的資料型別名稱(struct playerview *)改了稱呼,就叫playerview
c語言為什麼是乙個 弱 型別的高階語言?
5樓:匿名使用者
弱型別語言指的是一種沒有很強型別概念的語言,如vb,而強型別語言指的是有很強型別概念的語言,如c(雖然c允許型別轉換,但是相對來講比vb要是強型別),弱型別的好處在於程式設計師不需要過多的著重與型別的轉換,而強型別的好處在於程式可以有條不紊的執行,而且型別錯誤的出現率很低,即使有也很容易發現。
弱型別例子:(語言為vbscript)
var result=5+5; //兩個數字之和alert(result); //輸出10var result=5+'5'; //乙個數字和乙個字元之和alert(result); //輸出55因此使用弱型別語言也要格外注意資料型別防止出錯而c語言相對來講比vb更具有型別概念:
#include
int main(void) ;
弱弱的問句c語言能進行圖形介面gui開發嗎
可以的 我現在就在用呢 1.可以用 winc 就是直接在windows下程式設計。這個比較麻煩,因為所有的東西都必須自己寫 如建立視窗,初始化等一些基本的 以前老師上課的時候講過,理解了之後,感覺其實很簡單,而且都是一個套路,看個例子就能明白的 2.可以用mfc建立介面,裡面要具體實現的東西,直接用...
c語言的問題,C語言問題?
魘傳說 這個 的作用就是利用do while將陣列算出來,然後利用for迴圈遍歷,倒序輸出陣列。我感覺很奇怪,devc 出來的結果是10010。我算出來的結果應該是00010,因為強轉int型別應該是取0的,而不是取1.然後我用c 試了多個數字,發現所有的結果都是以1開頭,至於為什麼我也不知道,希望...
c語言問題,C語言問題。
考驕 用指標將兩個字串連結接起來,前一個while迴圈,確定s1字串走完,第二個while開始將s1的逐個字元複製給s1走完,也就是末尾,這樣就可以把字串都匯入到s1中 最後一個空寫的應該寫return s1 長魚修韋 很久沒碰這東西了。我來解釋下 第一個while的迴圈是為了讓指標指向第一個字串的...