C语言 one(int a, int b)...展开
感情程序员
TA获得超过1614个赞
关注
成为第3位粉丝
#include<stdio.h>
//全局变量A B C(在整个程序里面都能使用)
int A=9, B=10, C=11
void Two(int B, int&C) {
//参数列表中只有 B C,因此这里的A 指的是全局变量的A
//这里的C 是引用two()里面的B,不是全局变量,而是one()函数里面的局部变量
A = 21C = 5
//打印出全部变量A ,局部变量B ,引用的变量C
printf("%d %d %d\n", A, B, C)
}
void One(int A, int B) {
//形参数A B 用来接收传入的实参,注意这的A B是局部变量 不同于之前的全局变量A B ,
//这里的A B 的作用值局限于one这个函数,对它的修改不会对全局变量 A B 影响
int C=31 //局部变量 C
//打印出形参A B ,局部变量 C
printf("%d %d %d\n", A, B, C)
//将A B 作为实参传入
//注意在two()函数中,第二个参数是int&C,作用是以引用的方式使用
//就是说它在函数中没有声明出一个形参出来,直接引用实参
Two(A, B)
}
void main() {
//打印出全部变量A B C
printf("%d %d %d\n", A, B, C)
//将全局变量A B 作为参数传入one()函数里面
One(A, B)
//函数结束之后,局部变量全部释放掉,留下都是全局变量
//因为在函数two()中对全局变量A做了修改,所以这里的a 改变了,而其他的修改只不过是对局部变量的修改,不影响全局变量
printf("%d %d %d\n", A, B, C)
}
#include<stdio.h>void two()
{
printf("two\n")
}
void one_three()
{
printf("one\n")
two()
printf("three\n")
}
void main()
{
printf("starting\n")
one_three()
printf("done\n")
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)