亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有關指針的,大神看看

有關指針的,大神看看

C C++
bangmax 2016-01-28 11:53:49
#include <stdio.h>int main(){? int *p1,*p2,*p,a,b;? printf("integer numbers:"); scanf("%d,%d",&a,&b); ? p1=&a;? ? p2=&b;? if(a<b)? { /* p=p1; p1=p2; p2=p;*/ p1=&b;//為什么這樣就出問題? p2=&a; }? printf("a=%d,b=%d\n",a,b); printf("%d,%d\n",*p1,*p2);? return 0;}
查看完整描述

2 回答

已采納
?
MadMarical

TA貢獻79條經驗 獲得超122個贊

你好。我想你的問題是出于,為何輸出的a,b實際上并沒有交換。理由是,你只改變了指針的指向,并未改變a,b內存地址中存儲的值。而如果使用注釋段內的代碼,a,b內存地址中存儲的值是進行了交換的。

查看完整回答
2 反對 回復 2016-02-02
?
緋紅卷千紅

TA貢獻6條經驗 獲得超1個贊

出什么問題?

查看完整回答
反對 回復 2016-02-02
  • 2 回答
  • 0 關注
  • 1346 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號