C40-指針

一 指針的引入

  1. 什么是指針:指針是一個變量,其值是另一個變量的內存地址

  2. 簡單的使用地址輸出一個變量:

    • 代碼示例

      #include <stdio.h>
      int main()
      {int a=10;printf("a的地址是:%p\n",&a);printf("a=%d\n",*(&a)); //*號是取值運算符return 0;
      }
      
    • 成果展示:

    image-20250515201409413

    • 報錯與總結:無

二 指針變量的引入

  • 整型變量→存放整型數的變量
  • 字符變量→存放字符型數據的變量

由此,指針變量就是存放指針的變量,存放地址的變量

指針變量的聲明:

int *ptr;	//聲明一個指向int類型的變量ptr
double *dp;	//聲明一個指向double類型的變量dp

需要強調的是:"*"在聲明指針變量時作用是:表示聲明指針變量;而在其它地方用于解引指針

示例:通過指針變量訪問并輸出一個變量

  • 代碼示例:
#include <stdio.h>
int main()
{int a=10;int *p;p=&a;printf("a的地址是:%p\n",&a);printf("通過變量名訪問a:%d\n",a);printf("通過地址訪問a:%d\n",*(&a));printf("通過指針變量訪問a:%d\n",*p);return 0;
}
  • 成果展示:

image-20250515212047760

  • 報錯與總結:無

三 指針變量為什么要求類型

原因:

  • 內存訪問:不同類型數據占內存空間不同,指針類型決定解引用時讀取字節數,避免錯誤讀寫
  • 指針運算:指針運算偏移量與指向類型相關,類型不符則無法正確計算偏移

實驗:對比正確與錯誤的指針類型的地址訪問、數據訪問、指針偏移

正確的

  • 代碼示例:
#include <stdio.h>
int main()
{int a=0x1234;int *p=&a;puts("我們在這里測試指針的地址:");printf("p:%p\n",p);puts("\n我們在這里測試通過指針訪問變量:");printf("來自p的測試:%x\n",*p);puts("\n我們在這里測試指針偏移:");printf("++p:%p\n",++p);return 0;
}
  • 成果展示:

image-20250515232504458

  • 報錯與總結:

錯誤的

  • 代碼示例:
#include <stdio.h>
int main()
{int a=0x1234;int *p=&a;char *c=&a;puts("我們在這里測試指針的地址:");printf("c:%p\n",c);puts("\n我們在這里測試通過指針訪問變量:");printf("來自c的測試:%x\n",*c);puts("\n我們在這里測試指針偏移:");priintf("++c:%p\n",++c);return 0;
}
  • 成果展示:我們發現,指針類型不兼容從而導致報錯

image-20250515232757484

  • 報錯與總結:

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

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

相關文章

Nginx 返回 504 狀態碼表示 網關超時(Gateway Timeout)原因排查

Nginx 返回 504 狀態碼表示 網關超時&#xff08;Gateway Timeout&#xff09;&#xff0c;這意味著 Nginx 作為反向代理服務器&#xff0c;在等待上游服務器&#xff08;如后端應用服務器、數據庫服務器等&#xff09;響應時&#xff0c;超過了預設的時間限制&#xff0c;最終…

DeepSeek推理優化技巧:提升速度與降低成本

文章目錄 DeepSeek推理優化技巧&#xff1a;提升速度與降低成本引言一、模型優化&#xff1a;減少模型參數與計算量1. 模型剪枝&#xff08;Pruning&#xff09;2. 模型量化&#xff08;Quantization&#xff09;3. 知識蒸餾&#xff08;Knowledge Distillation&#xff09; 二…

深度解析 Sora:從技術原理到多場景實戰的 AI 視頻生成指南【附學習資料包下載】

一、技術架構與核心能力解析 1.1 時空建模體系的創新突破 Sora 在視頻生成領域的核心優勢源于其獨特的時空建模架構。區別于傳統將視頻拆解為單幀處理的模式,Sora 采用時空 Patch 嵌入技術,將連續視頻序列分割為 32x32 像素的時空塊(每個塊包含相鄰 3 幀畫面),通過線性投…

【實戰篇】數字化打印——打印部署管理接口開發

前言 前面的章節已經介紹了打印管理模塊的主要界面設計&#xff0c;本篇介紹用myBuilder開發界面接口&#xff0c;實現最終的功能。 1. 配置打印應用菜單 首先配置掛載好模塊菜單 讓菜單點擊能訪問到對應的頁面 2. 打印部署管理數據表詳細設計 以下是打印部署管理的數據表字…

Window下Jmeter多機壓測方法

1.概述 Jmeter多機壓測的原理&#xff0c;是通過單個jmeter客戶端&#xff0c;控制多個遠程的jmeter服務器&#xff0c;使他們同步的對服務器進行壓力測試。 以此方式收集測試數據的好處在于&#xff1a; 保存測試采樣數據到本地機器通過單臺機器管理多個jmeter執行引擎測試…

ResourceBundle多語言國際化

在 Java 中&#xff0c;ResourceBundle 是一個用于國際化&#xff08;i18n&#xff09;和本地化&#xff08;l10n&#xff09;的一種機制&#xff0c;它使得程序能夠根據不同的區域設置&#xff08;如語言、國家等&#xff09;加載不同的資源文件。ResourceBundle 主要用于從外…

精益數據分析(62/126):從客戶訪談評分到市場規模估算——移情階段的實戰進階

精益數據分析&#xff08;62/126&#xff09;&#xff1a;從客戶訪談評分到市場規模估算——移情階段的實戰進階 在創業的移情階段&#xff0c;科學評估用戶需求與市場潛力是決定產品方向的關鍵。今天&#xff0c;我們結合Cloud9 IDE的實戰經驗與《精益數據分析》的方法論&…

第四天——貪心算法——種花

1. 題目 有一個花壇&#xff0c;其中0 表示該位置是空的&#xff0c;可以種花。1 表示該位置已經有花&#xff0c;不能種花。 規則&#xff1a;新種的花不能種在相鄰的位置&#xff08;即如果某個位置已經種了花&#xff0c;它的左右兩個相鄰位置不能再種花&#xff09;。給定…

【重磅】配電網智能軟開關和儲能聯合規劃

目錄 1 主要內容 目標函數 數據說明 節點系統圖 2 部分代碼 3 程序結果 4 下載鏈接 1 主要內容 該程序復現《具有源荷不平衡特性的配電網智能軟開關和儲能聯合規劃》部分模型&#xff0c;未考慮聚類分析和分布魯棒部分&#xff0c;就智能軟開關和儲能聯合規劃部分進行了…

QMK固件OLED顯示屏配置教程:從零開始實現個性化鍵盤顯示(實操部分)

QMK固件OLED顯示屏配置教程:從零開始實現個性化鍵盤顯示 ?? 前言: 作為一名鍵盤愛好者,近期研究了QMK固件的OLED顯示屏配置,發現網上的教程要么太過復雜,要么過于簡單無法實際操作。因此決定寫下這篇教程,從零基礎出發,帶大家一步步實現鍵盤OLED屏幕的配置與個性化顯示…

中國科學院計算所:從 NFS 到 JuiceFS,大模型訓推平臺存儲演進之路

中科院計算所在建設大模型訓練與推理平臺過程中&#xff0c;模型規模與數據集數量呈爆發式增長。最初采用簡單的裸機存儲方案&#xff0c;但很快面臨數據孤島、重復冗余、管理混亂和資源利用不均等問題&#xff0c;于是升級到了 NFS 系統。然而&#xff0c;隨著使用強度增加&am…

飛牛NAS本地部署開源TTS文本轉語音工具EasyVoice與遠程使用流程

文章目錄 前言1. 環境準備2. Docker部署與運行3. 簡單使用測試4. 安裝內網穿透4.1 開啟ssh連接安裝cpolar4.2 創建公網地址 5. 配置固定公網地址總結 前言 本文主要介紹如何在fnOS飛牛云NAS使用Docker本地部署一款非常好用的開源TTS文本轉語音工具EasyVoice&#xff0c;并結合…

部署安裝jenkins.war(2.508)

實驗目的&#xff1a;部署jenkins&#xff0c;并與gitlab關聯bulid 所需軟件&#xff1a;jdk-17_linux-x64_bin.tar.gz jenkins.war apache-tomcat-10.1.40.tar.gz 實驗主機&#xff1a;8.10具有java環境,內存最少為4G&#xff0c;cpu雙核 目錄 jdk安裝 …

AEO認證的好處 ,如何快速獲取AEO認證?

AEO認證的好處及快速獲取方法 AEO&#xff08;Authorized Economic Operator&#xff0c;經認證的經營者&#xff09; 是海關對符合國際供應鏈安全標準的企業給予的認證&#xff0c;分為 AEO一般認證 和 AEO高級認證。獲得AEO認證可享受多項通關便利&#xff0c;提升企業國際貿…

(01)數字化轉型之采購管理:從計劃到退貨的精細化管控

引言&#xff1a;采購管理對企業運營的關鍵作用 在當今競爭激烈的商業環境中&#xff0c;采購管理已成為企業成本控制和供應鏈優化的核心環節。一項研究顯示&#xff0c;采購成本通常占企業總成本的60%-80%&#xff0c;而高效的采購管理可幫助企業降低5%-15%的采購成本。本文將…

技術視界 | 青龍機器人訓練地形詳解(四):復雜地形精講之斜坡

在前幾篇文章中&#xff0c;我們依次講解了如何創建一個地形、如何將地形添加到訓練環境中&#xff0c;并在上一期深入分析了復雜地形之一——臺階地形的創建方式與訓練意義。本文將繼續聚焦復雜地形訓練中另一類代表性地形——斜坡&#xff08;Slope&#xff09;與金字塔斜坡&…

【MySQL】多表連接查詢

個人主頁&#xff1a;Guiat 歸屬專欄&#xff1a;MySQL 文章目錄 1. 多表連接查詢概述1.1 連接查詢的作用1.2 MySQL支持的連接類型 2. 內連接 (INNER JOIN)2.1 內連接的特點2.2 內連接語法2.3 內連接實例2.4 多表內連接 3. 左外連接 (LEFT JOIN)3.1 左外連接的特點3.2 左外連接…

養豬場巡檢機器人的設計與應用研究

摘要 本論文針對傳統養豬場人工巡檢效率低、勞動強度大、數據準確性差等問題&#xff0c;設計了一種適用于養豬場的巡檢機器人。詳細闡述了該機器人的設計思路、技術原理、系統組成及功能特點&#xff0c;并通過實際應用案例分析其在養豬場中的應用效果。研究表明&#xff0c;養…

使用PEFT庫將原始模型與LoRA權重合并

使用PEFT庫將原始模型與LoRA權重合并 步驟如下&#xff1a; 基礎模型加載&#xff1a;需保持與LoRA訓練時相同的模型配置merge_and_unload()&#xff1a;該方法會執行權重合并并移除LoRA層保存格式&#xff1a;合并后的模型保存為標準HuggingFace格式&#xff0c;可直接用于推…

適用于 iOS 的 開源Ultralytics YOLO:應用程序和 Swift 軟件包,用于在您自己的 iOS 應用程序中運行 YOLO

?一、軟件介紹 文末提供程序和源碼下載 該項目利用 Ultralytics 最先進的 YOLO11 模型將您的 iOS 設備轉變為用于對象檢測的強大實時推理工具。直接從 App Store 下載該應用程序&#xff0c;或瀏覽我們的指南&#xff0c;將 YOLO 功能集成到您自己的 Swift 應用程序中。 二、…