1樓:匿名使用者
"因為我的數字很大,用指標的話效率高。"
這句話不對啊,數字大小和運算時間沒有必然聯絡,比如100乘以101和1000乘以1001的運算時間是一樣的。
另外,現代的編譯器優化能力非常強,不必什麼都得自己去優化。你的**就是一個例子。
2樓:匿名使用者
void main();
int (*pa)[3]=a;
for(int k=0;k<2;k++)
}cout<30)&&(a[i][j+1]>30))a[i][j]=1;
else
a[i][j]=0;
*/if(*(*(pa+i)+j)>30&&*(*(pa+i)+j+1)>30)
*(*(pa+i)+j)=1;
else
*(*(pa+i)+j)=0;}}
for(int m=0;m<2;m++)
}cout< 3樓:匿名使用者 #include int main() ;int *arrayptr, *b; arrayptr = &a[0][0]; b = &a[0][0]; for ( ; arrayptr <= &a[1][2]; arrayptr++ ) for ( ; b <= &a[1][2]; b++ )cout << *b << " "; return 0; }呵呵,幫你把程式寫完了,用指標的確方便很多 4樓:匿名使用者 int main() ; int *p=&a[0][0]; for(int i=0;i<6;i++) return 0;} 不行,首先你要有一個陣列存放字母,然後這個二維陣列,行中表示下一個元素應該是a i j,你這樣寫的話就是跳到了下一行了,二不是下一個字母了,你需要知道指標只能指向已存在的物件。如果物件本身並不存在,那麼是無法指向的。你舉的例子裡,沒有說明 b 在哪個位置,從何指出b的地址呢。你要是想用p指向a的地址... 這和printf用 s的規則相關。首先ps是一個指向字元型資料的指標 printf用 s修飾輸出時需要提供一個指標,這個指標指向的資料是字元型的,但printf將按照字串的規則來進行輸出,也就是輸出完這個指標指向的字元後,自動將指標加1,並判斷指向的字元是否為0,否則將輸出直至指向的資料為0為止,或... 首先程式存在一個錯誤if max其次 max a,單提陣列名錶示的是陣列第一個元素的地址,所以此處表示指標指向陣列的第一個元素,如果 max的值變了,那麼陣列第一個元素對應的值也相應改變 max a 0 表示指標指向的單元儲存的內容被賦值為a 0 所對應的整數值,max改變並不影響a 0 所儲存的值...問c語言指標問題,問一個c語言指標問題
c語言中變數指標輸出問題,C語言中變數指標輸出問題
C語言程式指標陣列的問題