網(wǎng)站首頁(yè) 編程語(yǔ)言 正文
前景提示
定義一個(gè)結(jié)構(gòu)體,結(jié)構(gòu)體中有兩個(gè)變量,其中一個(gè)是char類型的數(shù)組,那么,怎么向這個(gè)數(shù)組中插入數(shù)據(jù),打印數(shù)據(jù)呢?
typedef struct SequenceList { // 數(shù)組的元素 char element[20]; // 數(shù)組的長(zhǎng)度 int length; };
定義一個(gè)結(jié)構(gòu)體,結(jié)構(gòu)體中有兩個(gè)變量,其中一個(gè)是char類型的數(shù)組指針,那么,怎么向這個(gè)數(shù)組中插入數(shù)據(jù),打印數(shù)據(jù)呢?
// 定義順序表結(jié)構(gòu)體 typedef struct SequenceList { char *elment; int length; };
這里的結(jié)構(gòu)體處理的步驟
- 結(jié)構(gòu)體初始化
- 結(jié)構(gòu)體內(nèi)數(shù)據(jù)賦值
- 結(jié)構(gòu)體內(nèi)輸出數(shù)據(jù)
本著上述的原則,先對(duì)第一種類型進(jìn)行操作
一.char數(shù)組類型的處理
1.結(jié)構(gòu)體初始化
SequenceList L; L.element = (char*)malloc(sizeof(char)*10); L.length = 10
2.結(jié)構(gòu)體內(nèi)數(shù)據(jù)賦值(簡(jiǎn)單法)
L.elment[0] = 1; L.elment[1] = 2; L.elment[2] = 3; L.elment[3] = 4; L.elment[4] = 5;
for循環(huán)
for (int i = 0; i < 10; i++) { L.elment[i] = i+1; }
3.結(jié)構(gòu)體內(nèi)輸出數(shù)據(jù)
for (int i = 0; i < 10; i++) { //不會(huì)打印空值 if (L.elment[i]>0) { printf("element[%d] = %d\n",i, L.elment[i]); } }
二.char數(shù)組指針類型的處理
1.結(jié)構(gòu)體初始化
//結(jié)構(gòu)體初始化 MyList L; L.length = LENGTH; L.elment = (char*)malloc(L.length * sizeof(char));
2.結(jié)構(gòu)體內(nèi)數(shù)據(jù)賦值
//結(jié)構(gòu)體賦值 for (int i = 0; i < LENGTH; i++) { *(L.elment + i) = 'A' + i; }
3.結(jié)構(gòu)體內(nèi)輸出數(shù)據(jù)
//打印結(jié)構(gòu)體中的值 for (int i = 0; i < LENGTH; i++) { if (*(L.elment + i) > 0) { printf("elment[%d] = %c\n", i, *(L.elment + i)); } }
三.全部代碼
1. char數(shù)組
// 010.順序表_004.cpp : 此文件包含 "main" 函數(shù)。程序執(zhí)行將在此處開(kāi)始并結(jié)束。 // #include#define MAXSIZE 10 typedef struct SequenceList { // 數(shù)組的元素 char element[MAXSIZE]; // 數(shù)組的長(zhǎng)度 int length; }; int main() { // 1.初始化結(jié)構(gòu)體 SequenceList *L; L = (SequenceList*)malloc(sizeof(char)*MAXSIZE); L->length = MAXSIZE; // 2.存入結(jié)構(gòu)體內(nèi)值 for (int i = 0; i < MAXSIZE; i++) { L->element[i] = 'a' + i; } // 3.打印結(jié)構(gòu)體內(nèi)的值 for (int i = 0; i < MAXSIZE; i++) { if (*(L->element + i) > 0) { printf("elment[%d] = %c\n", i, *(L->element + i)); } } }
2. char數(shù)組指針
// 011.順序表_005.cpp : 此文件包含 "main" 函數(shù)。程序執(zhí)行將在此處開(kāi)始并結(jié)束。 // #include#define MAXSIZE 10 typedef struct SequenceList { // 數(shù)組的元素 char *element; // 數(shù)組的長(zhǎng)度 int length; }; int main() { // 1.結(jié)構(gòu)體初始化 SequenceList L; L.length = MAXSIZE; L.element = (char*)malloc(L.length * sizeof(MAXSIZE)); // 2.結(jié)構(gòu)體內(nèi)賦值 for (int i = 0; i < MAXSIZE; i++) { *(L.element + i) = 'a' + i; } // 3.打印結(jié)構(gòu)體中的值 for (int i = 0; i < MAXSIZE; i++) { if (*(L.element + i) > 0) { printf("elment[%d] = %c\n", i, *(L.element + i)); } } }
結(jié)語(yǔ)這就是最近遇到的問(wèn)題,這個(gè)問(wèn)題困擾了很久,相信許多的初學(xué)者也遇到了這樣的問(wèn)題,但是,網(wǎng)上的描述根本不怎么好用,所以,希望本博主遇到的這個(gè)問(wèn)題能幫助到你
總結(jié)
原文鏈接:https://www.cnblogs.com/liuyangfirst/p/15964945.html
相關(guān)推薦
- 2022-08-16 Hive常用日期格式轉(zhuǎn)換語(yǔ)法_數(shù)據(jù)庫(kù)其它
- 2022-12-09 ReactQuery系列React?Query?實(shí)踐示例詳解_React
- 2022-04-12 git項(xiàng)目初次push提示error: failed to push some refs to ht
- 2022-02-11 ES6的Promise用法詳解_基礎(chǔ)知識(shí)
- 2023-10-16 element組件autofocus( 自動(dòng)獲取焦點(diǎn))失效
- 2022-05-09 Matplotlib條形圖之分組條形圖和堆疊條形圖詳解_python
- 2022-08-23 Python+Selenium實(shí)現(xiàn)在Geoserver批量發(fā)布Mongo矢量數(shù)據(jù)_python
- 2022-03-27 C++編輯距離(動(dòng)態(tài)規(guī)劃)_C 語(yǔ)言
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運(yùn)行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲(chǔ)小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運(yùn)算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過(guò)濾器
- Spring Security概述快速入門(mén)
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯(cuò)誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實(shí)現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡(jiǎn)單動(dòng)態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對(duì)象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊(duì)列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支