C语言:
对变量有了进一步了解 每次初始化一个变量是 其实就是在内存中建立了一个地址 而int a=3;
=号呢 也就是让这个地址指向3..
而函数是不能改变形参数值的,无论他是地址还是神马,所以在用a做形参变量时,不能直接改变它的值,但是当用&a做形参时,却可以改变&a的“指向”,所以实际的形参是为发生变化的..
void change(int *a)
{
*a=5;
}
而当结构体做形参变量时,就有一点需要注意了。如何改变结构体的成员变量呢,这里有用到了“->”,为什么不用“.”呢,光哥说前者表示指针,后者表示结构.. 微微理解一下..
stuct node
{
int x;
}tree;
错误,编译器不执行:
void change(node *st)
{
st.x=5;
}
正确:
void change(node *st)
{
st->x=5;
}
嗯,就是这样。。
开始刷题喽... 昨天晚上写哈希写挂了. 龙杰大战八数码,嘎嘎~