temp=p1; p1=p2; p2=temp; 你想做地址交换,为什么语法上不行

学习 时间:2026-08-23 12:28:16 阅读:4090
temp=p1; p1=p2; p2=temp; 你想做地址交换,为什么语法上不行

最佳回答

满意的导师

老迟到的刺猬

2026-08-23 12:28:16

VC++ 6。0 编译器能检查出 你的p1,p2 是 int *p1, *p2, 而 temp 是 int temp。 认为类型不同,不能直接赋值。当然,理论上我们知道 地址值是 unsigned long int, 可以 赋给 int。于是,我们写“强制转化”就可以通过编译了:temp = (int) p1;

最新回答共有2条回答

  • 老实的羽毛
    回复
    2026-08-23 12:28:16

    VC++ 6。0 编译器能检查出 你的p1,p2 是 int *p1, *p2, 而 temp 是 int temp。 认为类型不同,不能直接赋值。当然,理论上我们知道 地址值是 unsigned long int, 可以 赋给 int。于是,我们写“强制转化”就可以通过编译了:temp = (int) p1;

上一篇 《核舟记》《口技》均出自张潮编选的一部笔记小说集《虞初新志》,意在“ ”

下一篇 求数学题:2、8、5、20、7、28、11、44、( )、12,此题的( )应该填多少?