C语言代码纠正下

来源:百度知道 编辑:UC知道 时间:2024/05/22 18:52:32
main()
{
int a;
float b;
printf("请输入浮点数字\n");
scanf("%f\n",&b);
a = &b++2;
printf("a is %d,a");
system("pause");
getch();
}

运算结果不正确,谁帮忙解决下让a=&b+1 怎么写?

main()
{
int a;
float b;
printf("请输入浮点数字\n");
scanf("%f\n",&b);
a = &b++2; —----此行有问题
printf("a is %d,a");
system("pause");
getch();
}

如果你想实现这行代码a=&b+1,它的意思是获得变量b的地址值(地址值为long型,32位)然后加1,赋值给a
如果是这样的话,a应定义为long型,打印输出时
printf("a is %lu,a");
这样就可以了

a = &b++2这一句有语法错误先不说,你又想让a = &b+1;
到底你想要实现什么功能呢?