新手求助,实现自己的printf函数 内存分配问题
代码int myprintf(int a,int b,int c)
{ //int *p = &a;
printf("a = %d\n",&a);
//p--;
printf("b = %d\n",&b);
//p--;
printf("c = %d\n",&c);
}
int main(void)
{
myprintf(200,300,400);
}
结果
a = 0x7ffcb24080ec
b = 0x7ffcb24080e8
c = 0x7ffcb24080e4
这个内存地址是由大到小分配的,
用指针p--也能输出a,b,c.
如果把函数定义为int myprintf(const char *format,...)
那地址就直接没有规律了
请问这个问题是电脑的原因吗?
我在网上找别人的源代码来编译却又是可以的