欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標題: 指針的指針和指針的糾纏 [打印本頁]

作者: liuyuxi    時間: 2015-1-10 22:38
標題: 指針的指針和指針的糾纏
   今天下午看了《C指針編程之道》看到第65頁的例4-2,看到結果和自己想的不一樣,突然有點懵了。。。久了沒復習指針都忘了。。今晚又自己寫一個程序實驗,才 理順思路,整明白。。。 寫個日志留作日后復習。







試驗程序。。。

#include "stdafx.h"


int main(int argc, char* argv[])
{
char *name[] = {"I love", "i like", "L Test"};
char **Pna;
char *dp;

puts("數組形式");
printf("%p(name[0]變量的地址)→%p(字符串的地址)→%s(里面的內容) \n", &name[0], name[0], name[0]);
printf("%p(name[1]變量的地址)→%p(字符串的地址)→%s(里面的內容) \n", &name[1], name[1], name[1]);
printf("%p(name[2]變量的地址)→%p(字符串的地址)→%s(里面的內容) \n", &name[2], name[2], name[2]);
puts("");

puts("指針的指針形式");
Pna = &name[0];// Pna:取變量變量自身所在的地址。*Pan取變量存儲的地址。&Pna取指針自身的地址
printf("%p(name[0]變量的地址) → %p(字符串的地址) → %c → %p(指針Add)\n", Pna, *Pna, **Pna, &Pna);

Pna = &name[1];// Pna:取變量變量自身所在的地址。*Pan取變量存儲的地址。&Pna取指針自身的地址
printf("%p(name[1]變量的地址) → %p(字符串的地址) → %c → %p(指針Add)\n", Pna, *Pna, **Pna, &Pna);

Pna = &name[2];// Pna:取變量變量自身所在的地址。*Pan取變量存儲的地址。&Pna取指針自身的地址
printf("%p(name[2]變量的地址) → %p(字符串的地址) → %c → %p(指針Add)\n", Pna, *Pna, **Pna, &Pna);
puts("");

//Pna 中存放著變量自身所在的地址 變量自身的地址中存放著字符串所在的地址 字符串所在的地址中放著字符串
//Pna 取變量變量自身所在的地址 %p 輸出地址
//*Pna取變量所存儲的字符串地址 %p 字符串首地址 %s 直接輸出字符串
//**Pna則直接得到字符串中某一個字符 %c打印字符

puts("指針的形式");
dp = name[0];// dp:取變量存儲的地址。
printf("%p(字符串的地址) = %s(里面的內容) = %c\n", dp, dp, *dp);
dp = name[1];// dp:取變量存儲的地址。
printf("%p(字符串的地址) = %s(里面的內容) = %c\n", dp, dp, *dp);
dp = name[2];// dp:取變量存儲的地址。
printf("%p(字符串的地址) = %s(里面的內容) = %c\n", dp, dp, *dp);
puts("");

//指針能取:1、指針自身地址。2、變量所存儲的地址和內容
//指針的指針能取:1、指針自身的地址。2、變量自身的地址。3、變量所存儲的地址和內容
//結論:指針只能取變量所存儲的地址和內容,而指針的指針則能取變量自身的地址和所存儲的地址和內容

puts("");
return 0;
}

輸出的內容:

數組形式
0012FF74(name[0]變量的地址)→0042224C(字符串的地址)→I love(里面的內容)
0012FF78(name[1]變量的地址)→00422244(字符串的地址)→i like(里面的內容)
0012FF7C(name[2]變量的地址)→0042223C(字符串的地址)→L Test(里面的內容)

指針的指針形式
0012FF74(name[0]變量的地址) → 0042224C(字符串的地址) → I → 0012FF70(指針Add)
0012FF78(name[1]變量的地址) → 00422244(字符串的地址) → i → 0012FF70(指針Add)
0012FF7C(name[2]變量的地址) → 0042223C(字符串的地址) → L → 0012FF70(指針Add)

指針的形式
0042224C(字符串的地址) = I love(里面的內容) = I
00422244(字符串的地址) = i like(里面的內容) = i
0042223C(字符串的地址) = L Test(里面的內容) = L


Press any key to continue






歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1