c 中的結構體是用來幹嘛的 能解決什麼問題

時間 2022-02-09 15:35:29

1樓:匿名使用者

結構體 是一種資料結構,比如函式返回值,按常理只能返回一個,但返回結構體型別的話,就能返回多個資料(結構體內本身包含的),而且這些資料還可以使不同的型別。

另外,封裝思想吧,把描述一個物件的資料都放在一個結構體中,比如一個結構體 ren(人)

struct ren

{float height;

float weight;

//等等

};這樣建了一個資料庫就比較容易管理每個人的資料了

2樓:仲孫潔玉

typedef struct x w;

這個是標準型別

c語言和c++都可以用

typedef x w;

這個只有c++才可以,因為c++中可以把struct 省略掉還有問題hi我

請問下c語言中的結構體有什麼用?

3樓:天方夜譚的哆啦a夢

c語言中的結構體可以定義一些複雜資料型別,把一些有內在聯絡的不同變數放在一起封裝成一個整體,這就是結構體。

例如:以學生為例,學生存在學號,姓名,性別,班級等。此時你可以頂一個結構體,將這些學生資訊封裝到一個結構體中。

code如下:

struct studentstudent;

voidfun(studentstu)

4樓:

結構體是c的一個突破點,就好比int這個型別一樣,你可以定義一個型別,用結構體來定義,對於c來說,對型別的操作不能整合在結構體當中,只能用單獨的函式來實現,但是c++中有類class可以整合,新版的c++也允許結構體中擁有函式,你只要記住,結構體類似於int float的型別定義,只不過沒有具體的函式或者方法罷了

5樓:雲澹楓卿

實際資訊處理過程中,有許多資訊是由多個不同型別的資料組合在一起進行描述的,而且這些不同的型別的資料是互相聯絡組成了一個有機的整體——結構體

6樓:匿名使用者

將有相干聯絡的幾項組成一個組合項,比如大學生:名字、學號、院系、專業、年齡、成績,這樣做便於查詢

7樓:匿名使用者

【結構體作用】

結構體和其他型別基礎資料型別一樣,例如int型別,char型別 只不過結構體可以做成你想要的資料型別。以方便日後的使用。

在實際專案中,結構體是大量存在的。研發人員常使用結構體來封裝一些屬性來組成新的型別。

結構體在函式中的作用不是簡便,其最主要的作用就是封裝。封裝的好處就是可以再次利用。讓使用者不必關心這個是什麼,只要根據定義使用就可以了。

結構體可以定義一些複雜資料型別,比如我要定義一個員工資訊的結構體,就可以在結構體裡新增員工編號、姓名、工資、地址、出生日期、**等資訊,有了結構體給程式設計帶來很大的方便。

8樓:匿名使用者

c語言中的結構體宣告瞭一個具有某種屬性的類,可以用它定義具有這屬性的變數,屬性值由一個或多個同種或不同基本型別(包括聯合、列舉型別、陣列、其他結構體)組成。

結構體型別吧不同型別的變數收集到一起,便於管理例如struct _student

;typedef struct _student student;

//宣告該類的變數 變數都具有這種結構的屬性student obj=;

student s[4]=,,,

,};//每個元素可以理解為資料庫中的一項紀錄

//訪問變數的某種屬性

if( s[1].year >13 ) s[1].n=2002;

void function(struct student& obj); //結構體變數作函式引數

c#中結構體到底有什麼用?

9樓:三斤魚

結構是值型別,在分配記憶體的時候,速度非常快,因為他們將內聯或者儲存到堆疊中,在結構超出作用域被刪除裡,速度也很快。

但當結構作為引數被傳遞或者把一個結構賦值給另一個結構,結構的所有內容都會被複制,效能影響就會較大。而對於類,只複製引用。

使用結構(c# 程式設計指南)

struct 型別適於表示 point、rectangle 和 color 等輕量物件。儘管可以將一個點表示為類,但在某些情況下,使用結構更有效。例如,如果宣告一個 1000 個 point 物件組成的陣列,為了引用每個物件,則需分配更多記憶體;這種情況下,使用結構可以節約資源。

由於 .net framework 包含名為 point 的物件,因此我們轉而呼叫結構「coords」。

public struct coords }

宣告結構的預設(無引數)建構函式是錯誤的。總是提供預設建構函式以將結構成員初始化為它們的預設值。在結構中初始化例項欄位也是錯誤的。

如果使用 new 運算子建立結構物件,則會建立該結構物件,並呼叫適當的建構函式。與類不同,結構的例項化可以不使用 new 運算子。如果不使用 new,則在初始化所有欄位之前,欄位都保持未賦值狀態且物件不可用。

對於結構,不像類那樣存在繼承。一個結構不能從另一個結構或類繼承,而且不能作為一個類的基。但是,結構從基類 object 繼承。結構可實現介面,其方式同類完全一樣。

與 c++ 不同,無法使用 struct 關鍵字宣告類。在 c# 中,類與結構在語義上是不同的。結構是值型別,而類是引用型別。有關更多資訊,請參見值型別。

除非需要引用型別語義,否則系統將較小的類作為結構處理效率會更高。

10樓:草薙在

結構體比較輕量級,在傳輸資料的時候是copy資料,而不是如類一樣給引用,所以不需要擔心資源釋放。同時結構沒有多型特性,所以在呼叫方法的時候效能會更好

11樓:晏偉根大河

列舉和結構體的應用都差不多.

通常都是定義一個結構體或列舉,然後再用其定義成一個陣列,舉例,有人做字型檔時有結構體,

裡面包括一個unsigned int用於存漢字**,一個unsigned char[32]用於存點陣.

然後用該結構定義一個陣列,

然後查詢陣列裡unsigned int是否對應漢字,如果對應,則unsigned char[32]為該漢字的點陣,

這通常應用於lcd漢字顯示.

總的一句話,就是方便資料歸類,

如果學過c++,其實就有點類似c++的類,當然,這比類要弱很多很多.

c 中什麼是標頭檔案,用來幹嘛的

哎呀 最簡單粗暴的理解就是 將別的檔案中的 插入指定位置。1 最通俗的理解,標頭檔案就是將別的檔案裡的 插入到程式設計 中的一種方式。它使用 include指令,比如 include abcd.h 這個指令告訴編譯器,我這兒要加入一些 這些 在一個叫 abcd.h 的檔案中,將這個檔案的內容直接全部...

c語言結構體的定義,C語言結構體的定義

滑映寒愈霽 第二個struct student是定義了一個student結構體,這個明白吧。第一個是用typedef把struct student這個結構體型別名字重新定義為student,也就是說struct student和student表示同一個事物,都是一個型別的識別符號,比如 typede...

這個是用來幹嘛的,這個東西是用來幹嘛的

秒懂心理學 錢拿來用的啊。錢不是萬能的。但是沒有錢是萬萬不能的。你有沒有嘗試過身無分文的感覺呢。有這樣的感覺你就不會問這樣的問題了。 繪影社 歷史證明,錢不是用來存的,是用來投資的 小島就是我 情感語錄正能量 錢到底是用來幹嘛的 迷霧亮燈塔 哪位大神知道這個是用來幹嘛的? 青小青 瑪卡 學名 lep...