最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語(yǔ)言簡(jiǎn)明清晰講解結(jié)構(gòu)體

 更新時(shí)間:2022年05月04日 16:46:05   作者:_雪菜肉絲面_  
C語(yǔ)言結(jié)構(gòu)體(Struct)從本質(zhì)上講是一種自定義的數(shù)據(jù)類型,只不過(guò)這種數(shù)據(jù)類型比較復(fù)雜,是由 int、char、float 等基本類型組成的。你可以認(rèn)為結(jié)構(gòu)體是一種聚合類型

本質(zhì)

一些值的集合。

簡(jiǎn)單使用

#include <stdio.h>
struct User {
	char uName[20];
	char uPass[20];
};
int main() {
	struct User u1 = {
		"abc","123"
	};
	printf("%s\n", u1.uName);
	printf("%s\n", u1.uPass);
	return 0;
}

效果:

在這里插入圖片描述

一些寫法

聲明之后,可以立即創(chuàng)建實(shí)例。

也可以單獨(dú)聲明。

#include <stdio.h>
struct User {
	char uName[20];
	char uPass[20];
} u1, u2, u3;
struct User u4;
int main() {
	struct User u5;
	return 0;
}

匿名結(jié)構(gòu)體:我用了,你們別想再用。

struct {
	char uName[20];
	char uPass[20];
}x;

我套我自己

只能套指針,因?yàn)榭臻g有限。

舉例:鏈表。

#include <stdio.h>
struct Node {
	int val;
	struct Node* next;
};
int main() {
	struct Node a = { 333,NULL };
	struct Node b = { 666,&a };
	printf("%d\n", (*b.next).val);
	return 0;
}

效果:

在這里插入圖片描述

內(nèi)存對(duì)齊

結(jié)構(gòu)體放成員,是一個(gè)一個(gè)放的。

第一個(gè)放到首個(gè)地址處。

第二個(gè)開(kāi)始,計(jì)算一個(gè)對(duì)齊數(shù),該數(shù)是以下兩個(gè)值的較小者:

1,VS的默認(rèn)值,8。

2,該成員所占字節(jié)數(shù)。

實(shí)際的偏移量是對(duì)齊數(shù)的整數(shù)倍。

最后,結(jié)構(gòu)體的大小是最大對(duì)齊數(shù)的整數(shù)倍。

舉例-int char char

#include <stdio.h>
struct A {
	int a;
	char b;
	char c;
};
int main() {
	struct A a = { 1,1,1 };
	printf("%lld", sizeof(a));
	return 0;
}

效果:8

在這里插入圖片描述

圖解:

int放在首位。

char占1字節(jié),直接放。

第二個(gè)char也是。

最后長(zhǎng)度,按int的字節(jié)數(shù)的整數(shù)倍,也就是8。

在這里插入圖片描述

舉例-char int char

#include <stdio.h>
struct A {
	char b;
	int a;
	char c;
};
int main() {
	struct A a = { 1,1,1 };
	printf("%lld", sizeof(a));
	return 0;
}

效果:12

在這里插入圖片描述

圖解:

char直接放。

int從第四個(gè)開(kāi)始放。

char直接放。

最后長(zhǎng)度:從9開(kāi)始第一個(gè)4的倍數(shù),12。

在這里插入圖片描述

舉例-char char int

#include <stdio.h>
struct A {
	char b;
	char c;
	int a;
};
int main() {
	struct A a = { 1,1,1 };
	printf("%lld", sizeof(a));
	return 0;
}

效果:8

在這里插入圖片描述

圖解:兩個(gè)char直接放。

int從下一個(gè)4的整數(shù)倍,也就是第五個(gè)開(kāi)始放。

最后長(zhǎng)度:從8開(kāi)始第一個(gè)4的倍數(shù),8。

在這里插入圖片描述

由結(jié)構(gòu)體指針訪問(wèn)成員

就是一種箭頭的寫法。

#include <stdio.h>
struct A {
	int a;
};
int main() {
	struct A a = { 333 };
	struct A* b = &a;
	printf("%d\n", b->a);
	return 0;
}

效果:

在這里插入圖片描述

到此這篇關(guān)于C語(yǔ)言簡(jiǎn)明清晰講解結(jié)構(gòu)體的文章就介紹到這了,更多相關(guān)C語(yǔ)言結(jié)構(gòu)體內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C語(yǔ)言實(shí)現(xiàn)順序表的基本操作的示例詳解

    C語(yǔ)言實(shí)現(xiàn)順序表的基本操作的示例詳解

    順序表是用一段物理地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)數(shù)據(jù)元素的線性結(jié)構(gòu),一般情況下采用數(shù)組存儲(chǔ)。本文將通過(guò)示例為大家講解一下順序表的基本操作,需要的可以參考一下
    2022-11-11
  • C++實(shí)現(xiàn)Window環(huán)境聊天室功能

    C++實(shí)現(xiàn)Window環(huán)境聊天室功能

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)Window環(huán)境聊天室功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • C語(yǔ)言創(chuàng)建和操作單鏈表數(shù)據(jù)結(jié)構(gòu)的實(shí)例教程

    C語(yǔ)言創(chuàng)建和操作單鏈表數(shù)據(jù)結(jié)構(gòu)的實(shí)例教程

    這篇文章主要介紹了C語(yǔ)言創(chuàng)建和操作單鏈表數(shù)據(jù)結(jié)構(gòu)的實(shí)例教程,講解使用C語(yǔ)言實(shí)現(xiàn)鏈表結(jié)構(gòu)時(shí)指針的使用,需要的朋友可以參考下
    2016-04-04
  • 帶頭結(jié)點(diǎn)的鏈表的基本操作(超詳細(xì))

    帶頭結(jié)點(diǎn)的鏈表的基本操作(超詳細(xì))

    鏈表是一種動(dòng)態(tài)分配空間的存儲(chǔ)結(jié)構(gòu),能更有效地利用存儲(chǔ)空間,通過(guò)對(duì)單鏈表基本操作的代碼實(shí)現(xiàn),我深刻領(lǐng)悟到以“指針”指示元素的后繼,在插入或刪除元素時(shí)不需要移動(dòng)元素
    2023-07-07
  • C++ inline內(nèi)聯(lián)函數(shù)詳解

    C++ inline內(nèi)聯(lián)函數(shù)詳解

    這篇文章主要介紹了C++ inline內(nèi)聯(lián)函數(shù)詳解,有感興趣的同學(xué)可以借鑒參考下
    2021-02-02
  • C/CPP運(yùn)算優(yōu)先級(jí)的坑及解決

    C/CPP運(yùn)算優(yōu)先級(jí)的坑及解決

    這篇文章主要介紹了C/CPP運(yùn)算優(yōu)先級(jí)的坑及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • linux下c語(yǔ)言中隱藏進(jìn)程命令行參數(shù)(例如輸入密碼等高危操作)

    linux下c語(yǔ)言中隱藏進(jìn)程命令行參數(shù)(例如輸入密碼等高危操作)

    啟動(dòng)程序很多時(shí)候用命令行參數(shù)可以很方便,做到簡(jiǎn)化一些配置,但是輸入用戶名密碼等操作,如果通過(guò)進(jìn)程查看工具直接看到密碼就太不安全了,這里就為大家分享一下方法
    2021-01-01
  • Qt中樹(shù)形控件Tree Widget的使用方法匯總

    Qt中樹(shù)形控件Tree Widget的使用方法匯總

    最近小編在研究Tree Widget樹(shù)形控件的相關(guān)知識(shí),這種控件其實(shí)有時(shí)還是很有用處的,我主要利用的是帶有復(fù)選框的樹(shù)形控件,下面通過(guò)實(shí)例代碼給大家介紹下Qt中樹(shù)形控件Tree Widget的一些使用方法,感興趣的朋友一起學(xué)習(xí)吧
    2021-11-11
  • 最新評(píng)論

    门头沟区| 岑溪市| 桦南县| 泰来县| 南陵县| 小金县| 琼结县| 祁连县| 林州市| 惠安县| 丽水市| 社会| 朝阳区| 赤峰市| 吐鲁番市| 南雄市| 读书| 绥德县| 韶关市| 天镇县| 老河口市| 台中市| 上虞市| 襄樊市| 麻栗坡县| 鄂温| 永吉县| 扶余县| 武陟县| 濮阳县| 长汀县| 阜南县| 抚顺市| 怀来县| 托克逊县| 巴彦淖尔市| 册亨县| 离岛区| 红河县| 错那县| 宁国市|