c語言筆記 數組進階題目的理解

題目:聲明一個二維 int 型數組 a,再聲明另一個一維數組指針數組 b,使該數組 b 的每一個指針分別指向二維數組 a 中的每一個元素(即每一個一維數組),然后利用數組 b 計算數組 a 的和。

圖解:畫圖幫助理解

????????我們要清楚什么是指針數組和數組指針,我們先要有知識儲備才能完美的做好這道題目.

//定義一個指針數組 
int *p[3]; 

????????指針數組:數組的元素是一個個指針,[]的元素優先級高于*;指針數組跟其他的普通數組的區別在于數組的元素不一樣。

//定義一個數組指針
int (*p)[3];

????????一維數組指針:指一個指針指向int [3]型的數組,跟普通指針沒有區別。就是指向類型不一樣.

一維數組指針數組 b是什么呢?

在之前的筆記中,我們知道這是一個數組。那么數組的元素類型和變量類型的確定(之前的筆記),比如數組的元素就是把數組名+[]拿走,剩下的就是數組的元素類型。

那么該數組b的元素類型是數組指針,我們知道數組指針是指向數組的指針,所以這種復雜的類型就是:一個數組中存放著數組指針,數組的元素是數組指針。數據里面的指針指向一維數組。

代碼:

#include <stdio.h>
// 數組指針數組
int main(void)
{int a[2][3] = {1, 2, 3, 4, 5, 6}, sum = 0; // 定義一個二維數組 該二維數組有兩個元素// 數組指針數組b int (*)[] 數組指針類型int(*b[2])[3];b[0] = a;b[1] = a + 1; // 直接b[1]當作指針來用 a+1表示二維數組的第二個元素printf("%d\n", *(*(b[0] + 0)));     // 數組指針類型的指向    1printf("%d\n", *(*(b[0] + 0) + 1)); // 數組指針類型的指向  2  b[0][0][1]printf("%d\n", b[0][0][1]);printf("%p\n", b[0] + 1); // +1是以類型的字節為單位進行偏移printf("%p\n", b[1]);// 第一種方式:for (int i = 0; i < 6; i++){sum += (*(*(b[0] + 0) + i)); // 等價于sum += b[0][0][i];}printf("第一種方式:%d\n", sum);// 第二種方式for (int i = 0; i < 2; i++){for (int n = 0; n < 3; n++){sum += b[i][0][n]; //等價于 *(*(b[i]+0)+i)}}printf("第二種方式:%d\n", sum);return 0;
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/71931.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/71931.shtml
英文地址,請注明出處:http://en.pswp.cn/web/71931.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Photo Works在線圖片編輯器:一鍵修復老照片,輕松煥新記憶

★【概況介紹】 今天突然收到我的朋友電腦出故障了,截圖給我,我一看就知道這個是缺少必要的組件引起的故障。結合這個問題,我來談談自己的解決思路和方法,希望能夠幫助到大家。幫助大家是我最開心的事情。以前只是幫朋友解決問題,沒有記錄下來,剛剛接觸到這個平臺,剛好可…

FANformer:融合傅里葉分析網絡的大語言模型基礎架構

近期大語言模型(LLM)的基準測試結果引發了對現有架構擴展性的思考。盡管OpenAI推出的GPT-4.5被定位為其最強大的聊天模型&#xff0c;但在多項關鍵基準測試上的表現卻不及某些規模較小的模型。DeepSeek-V3在AIME 2024評測中達到了39.2%的Pass1準確率&#xff0c;在SWE-bench Ve…

【 IEEE出版 | 快速穩定EI檢索 | 往屆已EI檢索】2025年儲能及能源轉換國際學術會議(ESEC 2025)

重要信息 主會官網&#xff1a;www.net-lc.net 【論文【】投稿】 會議時間&#xff1a;2025年5月9-11日 會議地點&#xff1a;中國-杭州 截稿時間&#xff1a;見官網 提交檢索&#xff1a;IEEE Xplore, EI Compendex, Scopus 主會NET-LC 2025已進入IEEE 會議官方列表!&am…

藍橋杯練題順序

有重復,適當選擇題目~共229道題&#xff01; 后續會發題解~ STL&#xff1a;9 3100 反轉字符串 [string簡單]---3100 -CSDN博客 2470 單調棧 [stack簡單]---2470 單調棧 [stack簡單]-CSDN博客 2254 括號匹配&#xff01; [stack簡單]---2254: 括號匹配&#xff01;-CSDN博客 …

react基礎語法視圖層類組件

react基礎語法視圖層&類組件 MVVM *區別mvc&mvvm 兩者的區別&#xff1a; 數據模型去渲染視圖。數據層改了&#xff0c;vue自己會監聽到幫我們拿最新的數據去渲染視圖&#xff1b;構建數據構建視圖&#xff0c;數據驅動的思想。這一套是非常相似的。 視圖中的內容改變&…

開發、科研、日常辦公工具匯總(自用,持續更新)

主要記錄匯總一下自己平常會用到的網站工具&#xff0c;方便查閱。 update&#xff1a;2025/2/11&#xff08;開發網站補一下&#xff09; update&#xff1a;2025/2/21&#xff08;補充一些AI工具&#xff0c;剛好在做AI視頻相關工作&#xff09; update&#xff1a;2025/3/7…

requests中post中data=None, json=None兩個參數區別

在 requests.post() 方法中&#xff0c;data 和 json 主要用于發送請求體&#xff0c;但它們的作用和格式有所不同。 1. data 參數 用途&#xff1a;用于發送表單數據或原始二進制數據。格式&#xff1a; 可以是 字典&#xff08;dict&#xff09;&#xff08;默認會編碼為 a…

51c大模型~合集10

我自己的原文哦~ https://blog.51cto.com/whaosoft/11547799 #Llama 3.1 美國太平洋時間 7 月 23 日&#xff0c;Meta 公司發布了其最新的 AI 模型 Llama 3.1&#xff0c;這是一個里程碑時刻。Llama 3.1 的發布讓我們看到了開源 LLM 有與閉源 LLM 一較高下的能力。 Meta …

架構演變 之 超市進化

1. 單機架構 → 小賣部&#xff08;夫妻店&#xff09; 場景&#xff1a;一個老板包攬所有工作——進貨、擺貨、收銀、打掃&#xff0c;店里只有一個小倉庫。對應架構&#xff1a;所有功能&#xff08;數據庫、業務邏輯、頁面&#xff09;都擠在一臺服務器上。問題&#xff1a…

ubuntu 和 RV1126 交叉編譯Mosqutiio-1.6.9

最近需要交叉編譯mosquitto&#xff0c;遇到一些小問題記錄一下。 1.眾所周知使用它自帶的Makefile編譯的時候&#xff0c;只需要在編譯前&#xff0c;指定它config.mk中的變量&#xff1a;CFLAGS頭文件路徑 和 LDFLAGS庫文件路徑就ok&#xff0c;例子如下&#xff1a; expor…

Photoshop 中如何快速摳圖?

Photoshop 中如何快速摳圖&#xff1f; 摳圖是 Photoshop 中的常見操作&#xff0c;無論是去除背景還是提取特定對象&#xff0c;都需要掌握高效的摳圖技巧。本文將介紹幾種快速摳圖的方法&#xff0c;幫助你輕松完成設計任務。 1. 快速選擇工具&#xff08;Quick Selection T…

解決 React 中的 Hydration Failed 錯誤

解決 React 中的 Hydration Failed 錯誤 React 的 服務器端渲染&#xff08;SSR&#xff09;通過在服務器端生成 HTML 并將其發送給客戶端&#xff0c;幫助提高頁面加載速度和搜索引擎優化&#xff08;SEO&#xff09;。然而&#xff0c;在進行 SSR 后&#xff0c;React 需要進…

如何使用postman來測試接口

一、postman的介紹與下載 可參考&#xff1a; https://blog.csdn.net/freeking101/article/details/80774271 二、api獲取網站 阿里云API應用市場 地址&#xff1a;云市場_鏡像市場_軟件商店_建站軟件_服務器軟件_API接口_應用市場 - 阿里云 三、具體測試過程 可模擬瀏覽…

數據庫系統概論(二)數據模型

數據庫系統概論&#xff08;二&#xff09;數據模型 數據庫系統概論&#xff08;二&#xff09;數據模型前言一、數據建模二、概念模型三、數據模型的三要素四、層次模型五、網狀模型六、關系模型 總結&#xff08;核心概念速記&#xff09;&#xff1a; 數據庫系統概論&#x…

清華同方國產電腦能改windows嗎_清華同方國產系統改win7教程

清華同方國產電腦能改windows嗎&#xff1f;清華同方國產電腦如果采用的是兆芯kx-6000系列或kx-7000系列以及海光c86 3250 3350 X86架構處理器可以安裝windows。在安裝win7時bios中要關閉“安全啟動”和開啟legacy傳統模式支持&#xff0c;如果是NVME接口的固態硬盤&#xff0c…

安卓Android與iOS設備管理對比:企業選擇指南

目錄 一、管理方式差異 Android Enterprise方案包含三種典型模式&#xff1a; Apple MDM方案主要提供兩種模式&#xff1a; 二、安全防護能力 Android系統特點&#xff1a; 三、應用管理方案 四、設備選擇建議 五、典型場景推薦 需求場景 推薦方案 六、決策建議要點…

再聊 Flutter Riverpod ,注解模式下的 Riverpod 有什么特別之處,還有發展方向

三年前我們通過 《Flutter Riverpod 全面深入解析》 深入理解了 riverpod 的內部實現&#xff0c;而時隔三年之后&#xff0c;如今Riverpod 的主流模式已經是注解&#xff0c;那今天就讓我們來聊聊 riverpod 的注解有什么特殊之處。 前言 在此之前&#xff0c;我們需要先回憶…

前端項目Axios封裝Vue3詳細教程(附源碼)

前端項目Axios封裝Vue3詳細教程&#xff08;附源碼&#xff09; 一、引言 在前端項目開發中&#xff0c;HTTP請求是不可或缺的一部分。Axios作為一個基于Promise的HTTP客戶端&#xff0c;因其易用性和豐富的功能而廣受歡迎。在Vue3項目中&#xff0c;合理地封裝Axios不僅可以提…

手寫一個Tomcat

Tomcat 是一個廣泛使用的開源 Java Servlet 容器&#xff0c;用于運行 Java Web 應用程序。雖然 Tomcat 本身功能強大且復雜&#xff0c;但通過手寫一個簡易版的 Tomcat&#xff0c;我們可以更好地理解其核心工作原理。本文將帶你一步步實現一個簡易版的 Tomcat&#xff0c;并深…

在 UniApp 開發的網站中使圖片能夠緩存,不一直刷新

在 UniApp 開發的網站中&#xff0c;要使圖片能夠緩存&#xff0c;不一直刷新&#xff0c;可以考慮以下幾種方法&#xff1a; 1. 使用適當的 HTTP 緩存頭 確保你的服務器在響應圖片時&#xff0c;返回合適的緩存控制 HTTP 頭。以下是一些常用的 HTTP 頭來控制緩存&#xff1a…