前天学习了关于内存的原理,理解了一下堆栈。今天学习指针,思路比刚开始学的时候更加清晰了一些。
首先在函数参数传递过程中,如果是基本变量,如int型,传递的参数是参数的拷贝
void change(int x,int y){ int temp; temp = x; x = y; y = temp; }
这个函数实际上对主函数里的参数没有做任何的修改
为什么呢?下面用一张图解释一下
这个图真是有够大的
#include<stdio.h> void change(int *x,int *y){ int temp; temp = *x; *x = *y; *y = temp; } void main(){ int x,y; x=5; y=6; //int *p1; // int *p2; // p1 = &x; // p2 = &y; change(&x,&y); printf("%d %d",x,y); }
学习了微机,认识了一下内存,数据结构,以前模糊的概念都清晰了起来。
虽然是很基本的内容。
时间: 2024-12-20 10:19:34