C語言結構體結尾什麼時候加分號「 」 求解!

2025-02-16 11:40:24 字數 4792 閱讀 7096

1樓:岔路程式緣

定義結構體。

是乙個語句組,規定最後是要加分號的。

如:strct student和;之間寫上結構體變數名或陣列名,如:

struct student{

stu,s[100];

這個結構看起來花括號後面沒有分號了,真實的原因是這一句還沒有寫完,不能加分號,這不是加到最後了嗎?

這種寫法與下面的寫法是完全等價的:

struct student{

stuct student stu,s[100];

現在你的問題,分號必不可少,只要是句末都要加。

2樓:yx陳子昂

是語句結束的標誌,和結構體本身無關。

struct student{};就是一句完整的結構體定義語句。

struct student stu; 就是定義乙個結構體物件。

可以聯合起來寫成:

struct student{}stu[100]; 省掉乙個語句而已。

3樓:孤鳥天涯

一般結構體定義結尾是以「;」結束,還有就是定義結構體同時,定義結構體變數等。具體來說結構體就是乙個特殊的格式,定義完格式就需要加「;」其他操作和普通語句相同。

定義乙個結構體最後為什麼要再加乙個分號

4樓:匿名使用者

定義乙個結構體最後加乙個分號,乙個宣告語句;

函式外定義了乙個全域性的結構體變數,就可以不加分號,如果定義了多個全域性的,則最後乙個可以不加,申明語句也要加分號啊。

結構體型別只能是宣告 ,例如宣告瞭乙個結構體型別 struct student{};定義變數形式 型別名 變數名;

5樓:網友

就是這麼規定的。

定義結構體是乙個語句,而不是乙個函式,所以要加分號啦。

你可以理解結構體是乙個型別,比如吧student當成int。

6樓:網友

學人家的東西,讓你加你加吧。

不過,我覺的,這類似於「int a;」這個吧;都是定義新的東西。

c語言程式裡何時用分號

7樓:網友

分號是乙個語句的一部分,所以所有簡單非複合語句都應該包括分號。

8樓:杜柔霍碧白

分號表明乙個語句結束。所以當寫完乙個完整的語句時,後面必須跟分號。

9樓:primo王的悲傷

當你乙個語句結束就需要分號,分號的意思就是結尾。

在c語言中什麼語句後要加分號,什麼語句後不用分號

10樓:融惜珊實傑

分號代表語句結束假設你有乙個陣列int

a[5];那麼你可以這樣給陣列賦值for(inti=0;i<5;i++)

a[i]=i;這個是沒加分號的,那麼a[0]=0,a[1]=1...a[4]=4;for(inti=

0;i<5;i++)這樣加了分號,就代表結束了,相當於迴圈只執行了i,然後就退出迴圈了。

a[i]=i;//這樣相當於只有a[4]=4;

c語言中,分號代表語句結束。

11樓:網友

不要的幾種情況:

#include ··

2。#define ··

後面譬如:機構體struct st

但是要注意 如:struct studentst;(這兒給student取了乙個「小名」st,要加「;」

12樓:網友

一些固定格式的外圍不用,結束句不用。其餘基本上都要。

13樓:網友

乙個語句的結束都要加分號,不加分號的不是語句。

14樓:

flash的actions語句句末不用加分號。

15樓:網友

預編譯語句不用加分號。

#incclude

#ifdefine x

等。其它就是花括號後不用加分號。

if(i>0)這裡不用。

另外就都要了。

16樓:夢803柯

每乙個語句的末尾都要加分號。

17樓:匿名使用者

沒記錯的話{}只有do

while ;和。

struct student

xuesheng;要。

18樓:網友

這個嘛,多上機操作就記住了。

c語言中,陣列和結構體初始化最後乙個元素後面多加了乙個逗號輝產生什麼結果,求解,謝謝

19樓:網友

對於陣列來說如果像下面這要多加乙個逗號結果不會變:

int a=;

int a=;

上面這兩條語句是等效的,其中第一種是計算機發展早期非常古老的一種寫法,這麼寫的目的是讓以後的程式維護人員少輸入乙個逗號,現代的c語言中一般已經不這麼用了。

對於結構體來說如果像下面這樣多加乙個逗號結果也不會變,但是沒有什麼意義,一般不建議這麼寫:

struct a mya=;

struct a mya=;

c語言中什麼時候花括號後要加分號?順便說一下哪些地方需要加分號。謝謝

20樓:網友

1全部定義變數的時候,比如宣告並初始化陣列。

char str = {}

定義結構體:

typedef struct ab_t;

一般乙個語句結束都要以分號為結尾。

21樓:豬頭或火寶寶

while()後面不是有的,至於為什麼要那樣定義,好像不是我們程式設計師的事情吧,我們只要會就可以了。

c語言結構體在定義的時候,各成員後面加冒號是什麼意思?

22樓:匿名使用者

指定num這個變數只佔用1 bit的寬度。

c語言struct複合結構不是最外側大括號要加個分號結束,為什麼這個程式time複合結構不加也可以,**如下

23樓:聽不清啊

struct time//結構體 輸入年 月 日。

/好像是要加分號啊。

24樓:搗蒜大師

這樣就和後面的main連起來了。

c語言**後面加分號代表什麼

25樓:網友

// 通常情況是代表語句結束,偶爾會有個例外(比如說for語句)。

int a; // 定義了int型變數a,語句結束,加上;

float b, // 定義了float型變數b,語句未結束c; // 繼續定義了float變數c,語句結果,加上;

for (int i=0; // ;前表示for語句的初始化語句。

i<10; // ;前表示for語句的條件判斷++i)

26樓:網友

分號對c語言c程式是至關重要的。分號決定這段待執行程式語句的結束,一段執行語句後面必須加分號。像別的命令符 如:if ··後面可以不加分號,還有幾個忘了 學過很久都沒用到了!

27樓:寶爸日記

代表的是乙個c語句的結束。

例如定義乙個變數,int test=10;

意思是生命乙個int型的變數test,並賦值為10,然後此語句結束。

在for(int i=0;i<10;i++)等迴圈語句中是一樣的。

28樓:網友

帶分號才是c語句的正常結束,如果不帶分號,編譯會報錯。

29樓:小諾的晴空

c語言的標準說的是乙個完整的c語句必須用分號結束,不然編譯會報錯。

而預處理命令#define不是c語言語句,這種就不需要加分號。

30樓:網友

加了之後就代表一條語句,程式設計中,都需要「;」來代表一條語句。比如 return 0;就是一條語句 還如迴圈中for(i=0;i

31樓:網友

這個是c 的語法,也就那幾種,我看大家都差不多回答出來了,你用多了就知道**要加,**不要加了,沒有為什麼,因為他就是這樣用的!

32樓:乜帥紅

c是通過分號來區分一句話的而不是換行符。

編譯器會把一句話解析後生成指令。

33樓:網友

正常的一句c**加個分號才是乙個語句 要不然只是個表示式 是不完整的。

而有些for(;;while{} 等花括號的結尾不用加分號。

34樓:夢遊夜譚

加分號代表語句結束,不加的話就不是乙個完整的語句。

35樓:網友

; 表示一條c語句的結束。

36樓:住山洞的野人

我可能應該知道你意思了呢,是不是你認為#define,#include之類的預處理命令後面沒有分號?!

原因是他們不是c語句,c語言的標準說的是乙個完整的c語句必須用分號結束,「預處理命令不是c語言語句」這是標準c的規定的,記住就行相信樓上說的比較清楚了,我不多嘮叨了,現在你明白了吧,呵呵。。。

37樓:炒飯

我說實在的,找本c的書看看把,這是最基本的問題。

c語言中a b什麼時候,c語言中a b什麼時候

a b中的 是按位與操作,其規則為,當a和b對應位上的值均為1時,結果的該位上為1,否則結果該位上為0。即1 1 1 1 0 0 0 1 0 0 0 0 所以,a b結果為1的情況有很多種,只要a和b的最低位均為1,其它位上均不同時為1即可。如0x33 0x41 或0xff 0x01等等。符號 在c...

定義結構體最後為什麼要再加分號,定義一個結構體最後為什麼要再加一個分號

定義一個結構體最後加一個分號,一個宣告語句 函式外定義了一個全域性的結構體變數,就可以不加分號,如果定義了多個全域性的,則最後一個可以不加,申明語句也要加分號啊 結構體型別只能是宣告 例如宣告瞭一個結構體型別 struct student 定義變數形式 型別名 變數名 就是這麼規定的。定義結構體是一...

C語言指標什麼時候要帶什麼時候不帶

int a 定義 duint p 定義並賦值 int point a 賦值時zhi p a 取值時 int a p 取值時 int b p 指標dao其實跟普通變數的 回區別就在於它的記憶體裡裝的是答一個地址,而普通變數裡裝的是數值 定義時加 是為了讓編譯器認出它是一個指標,知道其記憶體裡裝的資料是...