#include<stdio.h>
void function(void);
void main (void)
{
int number;
printf("call? yes(1) no(-1)");
scanf("%d", &number);
while(number>=0)
{
function();
printf("call? yes (1) no (-1)");
scanf("%d", &number);
}
}
void function(void)
{
static int multiple = 2;
printf("%d", &multiple);
multiple = multiple*2;
}
这是我的代码,用于找到2乘以数字。我希望它打印2,4,8,16等,但是当我运行此代码时,我得到一些大数字。我刚开始学习c所以任何评论都表示赞赏
答案 0 :(得分:3)
在printf()
中,会打印multiple
的地址。将printf("%d", &multiple);
更改为printf("%d\n", multiple);
。
答案 1 :(得分:2)
从打印件中删除&
。
改变这个:
printf("%d", &multiple);
到此:
printf("%d", multiple);