....

2014年5月23日 星期五

[長知識] C語言 - 新手篇章 - 指標應用

#include <stdio.h>
#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int main(int argc, char *argv[]) {
//Pointer 指標
//所有變數都是記憶體的一個空間
//一塊記憶體可以在不同的地方取用

int a=10, b=20;
//宣告一個指標可以指向int,0byte
//*取值,&取址
// a: int , ptr: int的記憶體位置

int* ptr;
ptr = &a;

printf("%i\n", a);
printf("%i\n", *ptr);

printf("a的記憶體本身位置%i,值為%i\n", &a, a);
printf("b的記憶體本身位置%d,值為%d\n", &b, b);
printf("ptr的記憶體本身位置%d,值為%d,內容為%d\n", &ptr, ptr, *ptr);

//透過ptr把b的值變成10
b = *ptr;
printf("b的記憶體本身位置%d,值為%d\n", &b, b);



*ptr = 100;
printf("a的記憶體本身位置%i,值為%i\n", &a, a);
printf("ptr的記憶體本身位置%d,值為%d,內容為%d\n", &ptr, ptr, *ptr);





return 0;

}

沒有留言:

張貼留言