10.2 查詢地址:&運算子
指標(pointer)是 C 語言最重要的(有時也是最複雜的)概念之一,用於儲存變數的地址。前面使用的scanf()函式中就使用地址作為引數。概括的說,如果主調函式不使用return返回的值,則必須通過地址才能修改主調函式中的值。接下來,我們將介紹帶地址引數的函式。首先介紹一元&運算子的用法。
一元&運算子給出變數的儲存地址。如果pooh是變數名,那麼&pooh是變數的地址。可以把地址看作是變數在記憶體中的位置。假設有下面的語句:
pooh = 24;
假設pooh的儲存地址是0B76(PC地址通常用十六進位制形式表示)。那麼,下面的語句:
printf("%d %p\n", pooh, &pooh);
將輸出如下內容(%p是輸出地址的轉換說明):
24 0B76
下程式清單中使用了這個運算子檢視不同函式中的同名變數分別儲存在什麼位置。
/************************************************************************
功能:檢視變數被儲存在何處
/************************************************************************/
#include<stdio.h>
void mikado(int); //函式原型
int main(void)
{
int pooh = 2, bah = 5; //main()的區域性變數
printf("In main(), pooh = %d and &pooh = %p\n", pooh,&pooh);
printf("In main(), bah = %d and &bah = %p\n", bah, &bah);
mikado(pooh);
return 0;
}
void mikado(int bah) //定義函式
{
int pooh = 10; //mikado()的區域性變數
printf("In mikado(), pooh = %d and &pooh = %p\n", pooh,&pooh);
printf("In mikado(), bah = %d and &bah = %p\n", bah,&bah);
}
程式清單中使用ANSI C的%p格式列印地址。我們的系統輸出如下:
In main(), pooh = 2 and &pooh = 0039FAC8
In main(), bah = 5 and &bah = 0039FABC
In mikado(), pooh = 10 and &pooh = 0039F9D4
In mikado(), bah = 2 and &bah = 0039F9E8
實現不同,%p表示地址的方式也不同。然而,許多實現都如本例所示,以十六進位制顯示地址。
相關文章
- SQL Server查詢計劃系列之——邏輯運算子與物理運算子SQLServer
- mongodb 查詢條件,查詢邏輯對照表,邏輯運算子,正規表示式匹配查詢,排序,分頁/巧分頁,更新運算子,更新單個/多個文件,刪除文件,批次插入,$type運算子,ObjectId生成器,內嵌文件和陣列查詢修改MongoDB排序Object陣列
- 運算子 運算子
- 淘寶IP地址查詢
- ip地址查詢apiAPI
- 全國省市區地址查詢API:簡單易用的地址查詢服務API
- 語義網查詢地址
- php運算子 比較運算子 邏輯運算子 三元運算子PHP
- 運算子-賦值運算子賦值
- PostgreSQL:網路地址——型別、運算子和函式SQL型別函式
- MySQL的四種運算子(算術運算子、比較運算子、邏輯運算子和位運算子)MySql
- 8.Golang中的運算子-算術運算子、關係運算子、邏輯運算子、賦值運算子Golang賦值
- javascript運算子——邏輯運算子JavaScript
- 如何查詢網站 ip 地址網站
- delphi 查詢av錯誤地址
- cmd命令如何查詢ip地址
- 運算子的關係,什麼叫一元運算子,二元運算子,三元運算子,運算子優先順序,以及運算子的
- 運算子
- java零基礎自學第一天②,運算子:表示式,算術運算子,+操作,賦值運算子,自增自減運算子,關係運算子,邏輯運算子,三元運算子Java賦值
- 電腦ip地址在哪 電腦ip地址查詢方法
- javascript中&&運算子和||運算子的使用JavaScript
- 算術運算子裡的特殊運算子
- javascript基礎(賦值運算子,關係運算子,相等運算子,三元運算子,運算子的優先順序,程式碼塊)(十)JavaScript賦值
- php運算子運用之型別運算子該如何使用PHP型別
- Python學習-算術運算子,賦值運算子和複合運算子Python賦值
- 古靈精怪的python——地址,淺拷貝與身份運算子Python
- Python 運算子優先順序 運算子Python
- C++ 迭代器運算子 箭頭運算子->C++
- 檢視ip地址的cmd命令 cmd查詢ip地址命令
- JavaScript /= 運算子JavaScript
- JavaScript += 運算子JavaScript
- JavaScript -= 運算子JavaScript
- JavaScript *= 運算子JavaScript
- JavaScript %= 運算子JavaScript
- JavaScript |= 運算子JavaScript
- JavaScript <<= 運算子JavaScript
- JavaScript >>>= 運算子JavaScript
- JavaScript >>= 運算子JavaScript