麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 學院 > 開發設計 > 正文

C語言——指針

2019-11-14 19:23:30
字體:
來源:轉載
供稿:網友
一、什么是指針

  “指針變量”是指用來存放變量地址的變量。指針變量也是一個變量,它和其他變量的區別在于它里面存的不是普通的數據,而是另一個變量的地址。訪問變量有兩種方式,第一種是直接根據變量名稱取到變量的地址,然后去對應內存地址拿到變量的值,這種方式叫做“直接引用”;第二種方式是定義一個指針變量指向變量,從指針變量中拿到變量的地址,再去對應內存地址拿到變量的值,這種方式叫做“間接引用”。

二、指針的應用

2.1 如何用指針表示一個變量

  下面通過幾張圖片來看一下如何用指針表示一個變量,需要注意的是指針的數據類型必須和它所指向的變量的數據類型相同。

2.2 數組和指針

  數組可以存儲一組相同的數據元素,它們在內存中占用的是連續的內存空間(如下圖所示),所以我們可以通過指針去遍歷或者操作數組。

  回文字符串是指正序和逆序讀該字符串都是一樣的字符串,因此可以定義兩個指針,分別指向字符數組中的第一個字符和最后一個字符,然后依次向后或向前取出成對的字符,進行比較,代碼如下圖所示。

  從上面的例子可以看出,通過指針start++、end--,可以遍歷字符串中的字符。數組是占連續的存儲空間,每個元素所占得字節數就是數組數據類型的字節數,所以實際上start++移動的字節數就是數組中元素所占的字節數,那么指針如何知道元素的數據類型呢?這就回到開頭說到的,定義的指針的數據類型必須和它所指向的變量數據類型相同,換句話說,就是指針只能指向和它定義的數據類型相同的變量。

2.3 指針作參數&指針作返回值

  當我們把某個功能代碼封裝到函數中時,可以用指針作為參數,也可以用指針作為返回值。比如下圖所示例子。

 

  如上所示,在main函數中,由鍵盤輸入了明文存到一個字符串中,然后調用encryption(char *)這個函數完成加密。要加密的內容存儲在數組中,在調用函數的時候,需要將數組傳入,這里是用指針來完成的。調用函數時傳入的psw是數組的地址,被指針p_psw接收,稱為指針變量的值,這個時候,就可以說指針p_psw指向了字符串數組的第一個字符。字符串是以‘/0’結尾的特殊的字符數組,所以通過指針++依次遍歷字符串中每一個字符進行加密,直到指針指向‘/0’結束標志。在函數的結尾又將保留的字符串的首地址的指針作為返回值返回,實際上返回的p_temp是返回的字符數組的首地址。回到main函數,定義了一個新的指針接收返回值,其實就是讓這個新指針p_new指向字符串第一個字符,所以通過puts(p_new)輸出的就是加密之后的字符串。

 

作者:杰瑞教育
出處:http://www.companysz.com/jerehedu/ 
本文版權歸煙臺杰瑞教育科技有限公司和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。
 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 又黄又爽免费无遮挡在线观看 | 免费一级毛片免费播放 | 国产一区二区三区在线观看视频 | 欧美精品成人一区二区三区四区 | 91成人亚洲 | 久久精品亚洲国产奇米99 | 欧美区在线 | 中国字幕av| 黄色片网站免费在线观看 | 一本色道久久久888 国产一国产精品一级毛片 国产精品高潮视频 | 久草在线综合网 | 国产91在线亚洲 | 成人福利免费在线观看 | 天堂成人国产精品一区 | 一区二区三区在线播放视频 | www.99久| 久久最新网址 | 九九精品影院 | 天天都色视频 | 欧美日韩中文字幕在线视频 | 国产99久久精品一区二区 | 一区二区三区视频在线观看 | 久久精品国产99久久久古代 | 香蕉秀| 亚洲精品久久久久久下一站 | 成人一级在线 | 国产91久久精品 | 成人做爽爽爽爽免费国产软件 | 成人资源在线观看 | 99精品视频久久精品视频 | 久久精品欧美电影 | chinese军人gay呻吟 | 精品国产一区二区三区在线观看 | 一区二区三区欧洲 | 久久久久久久久久久久久久av | 精品一区二区三区在线观看视频 | 国产精品视频成人 | 色av综合在线 | www.777含羞草| 深夜网站在线观看 | 精品一区二区久久久久久按摩 |