#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;
}
沒有留言:
張貼留言