91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

c語言指針用法簡單舉例 C51的指針概述

那片星 ? 來源:那片星 ? 作者:那片星 ? 2022-04-22 18:04 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

指針是C語言的一個特殊的變量,它存儲的數值被解釋成為內存的一個地址。

指針定義的一般形式如下。

數據類型 *指針變量名;

例如:
int i,j,k,*i_ptr; //定義整型變量i,j,k和整型指針變量i_ptr。
指針運算包括以下兩種:
(1)取地址運算符。取地址運算符&是單目運算符,其功能是取變量的地址,例如:
i_ptr=&i; //變量i的地址送給指針變量i_ptr
(2)取內容運算符。取內容運算符“*”是單目運算符,用來表示指針變量所指單元的內容,在星號“*”運算符之后跟的必須是指針變量。例如:
j=*i_ptr; //將i_ptr所指的單元的內容賦給變量j
可以把數組的首地址賦予指向數組的指針變量。例如:
int a[5],*ap;
ap=a; //數組名表示數組的首地址,故可賦予指向數組的指針變量
也可以寫成:
ap=&a[0]; //數組第一個元素的地址也是整個數組的首地址,也可賦予指針變量ap
還可以采用初始化賦值的方法:
int a[5],*ap=a;
也可以把字符串的首地址賦予指向字符類型的指針變量。例如:
unsigned char *cp;
cp="Hello World!";
這里應該說明的是,并不是把整個字符串裝入指針變量,而是把存放該字符串的字符數組的首地址裝入指針變量。
對于指向數組的指針變量,可以進行加減運算,例如:
cp--; //cp指向上一個數組元素
ap++; //ap指向下一個數組元素
例如:定義了指針類型的形式參數如下:
uchar *str;
該形式參數表示一個無符號字符型變量的地址??梢圆捎靡韵沦x值語句:
SBUF=*(str+k); //將單元地址為str+k的內容賦給專用寄存器SBUF,啟動發(fā)送
在調用該函數時,直接把數組trdata[]的數組名作為實際參數代入即可,因為數組名表示數組的首地址,故可直接賦予指向數組的指針變量。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    183

    文章

    7644

    瀏覽量

    145570
  • 指針
    +關注

    關注

    1

    文章

    484

    瀏覽量

    71843
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    指針與函數詳解

    = a + b; return(p); } 這是一個簡單指針函數的例子,運行結果如下,本文代碼在VScode平臺運行,使用方法《使用VScode調試C語言》。 不過我有個疑
    發(fā)表于 01-23 06:02

    C語言重點—指針

    C語言是比較偏底層的語言,為什么他比較偏底層,就是因為他的很多操作都是直接針對內存操作的。 這篇我們就來講解C語言的一大特點,也是難點,
    發(fā)表于 01-22 08:23

    函數指針介紹

    就是一個指針函數。其返回值是一個 int 類型的指針,是一個地址。 指針函數也沒什么特別的,和普通函數對比不過就是其返回了一個指針(即地址值)而已。
    發(fā)表于 01-21 08:11

    請教一個C語言指針問題,求解答

    C語言指針,多多少少還是有些難度的,容易有些混淆。 請教大家下面的這個表達式是啥意思呢? short (*p)[size] = (short (*)[size])0x8ff00000; 是否為在0x8ff00000地址處分
    發(fā)表于 01-12 08:14

    C語言指針p、*p、&p、*&p、&*p分別代表什么

    C語言中,指針是非常重要的概念。指針是一個變量,其值為另一個變量的地址。使用指針可以直接訪問內存中的數據,這使得
    發(fā)表于 01-07 07:34

    C語言回調函數原來這么簡單

    ” 這個概念,它是回調函數能夠實現的重要基礎。 1、函數指針學習過C語言的伙伴都知道,C語言中的靈魂 —
    發(fā)表于 12-30 06:45

    請問如何實現C語言訪問MCU寄存器?

    單片機的特殊功能寄存器SFR,是SRAM地址已經確定的SRAM單元,在C語言環(huán)境下對其訪問歸納起來有兩種方法。 采用標準C的強制類型轉換和指針來實現   采用標準
    發(fā)表于 12-26 07:00

    函數指針指針函數的區(qū)別

    = fun(a);   注意指針函數與函數指針表示方法的不同,千萬不要混淆。最簡單的辨別方式就是看函數名前面的指針*號有沒有被括號()包含,如果被包含就是函數
    發(fā)表于 12-12 06:34

    如何用函數指針調用函數

    (void) { int(*p)(int, int);//定義一個函數指針 int a, b, c; p = Max;//把函數Max賦給指針變量p, 使p指向Max函數 printf(\"
    發(fā)表于 12-11 06:26

    C指針的妙用分享

    1、你知道嗎?指針其實是個天生的數學家!看這個: #include int main() { int arr[] = {10, 20, 30, 40, 50}; int *p = arr
    發(fā)表于 11-17 06:35

    C語言和單片機C語言有什么差異

    有些擴展,及一些特殊寫法如C51擴展的 data xdata bit sbit一類的,還有一些中斷程序寫法 void int() interrput 1一類的。 2、C是一門高級語言,它需要經過編譯成
    發(fā)表于 11-14 07:55

    C語言的printf基本用法介紹

    簡單的例子: printf(\"C語言\"); 這個語句可以在屏幕上顯示“C語言”,與puts(\"
    發(fā)表于 11-12 07:04

    新概念51單片機C語言教程入門、提高、開發(fā)、拓展全攻略

    1.6 單片機的C51基礎知識介紹 1.6.1 利用C語言開發(fā)單片機的優(yōu)點 1.6.2 C51中的基本數據類型 1.6.3 C51數據類型
    發(fā)表于 04-15 13:57

    51單片機C語言學習筆記

    c51語言快速入門
    發(fā)表于 03-24 14:04 ?3次下載

    全套C語言培訓資料—PPT課件

    全套C語言培訓資料,共427頁,13個章節(jié):C語言概述、程序的靈魂—算法、數據類型 & 運算符與表達式、順序程序設計、選擇結構程序設
    發(fā)表于 03-12 14:50