1樓:匿名使用者
值相同。
因為陣列中陣列名代表陣列的首地址,也就是第一個元素的地址,即&a[0]。所以&a[6]就是首地址加6,即(a+6)。
因為&a[6] == (a + 6)
所以a[6] == *(a + 6)
2樓:蠟筆小新
沒有區別,在訪問的時候
一道c++有關指標的題目誰可以幫我解釋一下?
3樓:匿名使用者
跟你寫抄幾個關鍵的地方吧
int a[10]=, i, *p=a;
fun(p, 0, 3);
所以fun裡面的bais 就是 a, i =0, j=3*(s+i) 等同與 a[0], *(s+j)=a[3]t=*(s+i); *(s+i)=*(s+j); *(s+j)=t;
相當於du替換了a[0],a[3]的值,zhi由於指標指向的是記憶體地dao址,所以a[0],a[3]的值是永久替換的,就是說在fun方法執行完了以後,a的值就變了
4樓:匿名使用者
void fun(int *s, int n1, int n2)}void main( )
, i;
int *p=a; //p指向陣列a的第一個就是a[0]的地址
fun(p, 0, 3);//a[0]與a[3]換,a[1] 與a[2]換
//a[10] =
fun(p, 4, 9);//自己後面算吧a[10] =fun(p, 0, 9); //a[10]=for (i=0; i<10; i++)//}
5樓:與諸君共進步
樓上寫的你如果原來不懂的話,看過他寫的,必然還是不懂。
你去翻閱下c++ 關於指標這一節吧,看看就明白的。這樣空說也比較難說明白。
在c++語言中,a+=a*=a/=a-6是什麼意思?求詳細解答
6樓:匿名使用者
注意賦值運算子是從右往左結合的,所以這個表示式是這樣運算的:
a += ( a *= (a /= (a - 6)))意思就是首先將a / (a - 6) 的值賦值給a再將a 現在的平方的值賦給a
再將最新a 的值乘2賦值a
不過要注意那個除法對整數和浮點數型別時不一樣比如int a= 10,則a - 6 = 4,於是a /= (a-6),a被賦值10/4 = 2 ,並且表示式的值也是a的值2
然後a *= (a /= (a - 6)),因為a已經被修改為2,於是a 被2 * 2 = 4賦值,並且表示式的值也是a的值4
最後a + = ( a *= (a /= (a - 6))),此時a已經被修改為4,於是a 被4 + 4 = 8賦值
如果a是浮點數,則除法結果就是正常意義上的除法了,後面的過程一致
7樓:匿名使用者
舉個例子。
假設a的初始值為a=12。
像這樣的語句可以拆解如下(一定要注意順序)t1=a-6; //t1=12-6=6.
t2=a/t1; //執行該語句前a=12,t2=12/6=2.
a=t2; //a=t2=2.
t3=a*t2; //
a=t3;
t4=a+t3;
a=t4;
則a最後的結果為8
檢驗的程式如下
#include
int main()
8樓:嗚灬嗚
分幾段來講,就是a=a/(a-6)
a=a*a
a=a+a
記得,每一次執行後a都會發生變化
還有就是假如除後有小數的話,在c++中它會截斷小數點後的數,除非你在除數或被除數後加.0
當x為何值時,式子4x 3與 5x 6的值1)相等2)互為相反數寫出算式,還有過
1 相等時4x 3 5x 6 4x 3 5x 6 0 9x 3 0 9x 3 x 1 3 2 互為相反數時 4x 3 5x 6 4x 3 5x 6 0 x 9 0x 9 1 4x 3 5x 6 2 4 3 5 6 令4x十3 一5x十6,則x 1 3 令4x十3一5x十6 0則x 9 1 4x 3 ...
怎樣在C中宣告型別為int,值為空的變數
平常的 int 型別是不允許為空的,但是 c 支援在型別後面加 來定義以為可以為空的值型別,寫法如下 int?a null 檢查 a 是否為空 if a.hasvalue else 你是說可空的int型別的變數怎麼宣告 int?currentvalue null 這樣的宣告就可以了,在賦值過程中可以...
鈉在化學反應中形成的粒子與什麼原子具有相同的核外電子數
與氖原子具有相同的核外電子數。因為鈉最外層僅有的一個電子被別人捕獲,成為別人的半拉兒子,致使鈉的次外層成為最外層,這樣鈉就剩下10個核外電子數,所以和氖原子具有相同的核外電子數。比如食鹽就因為鈉原子類似氖的惰性氣體,所以食鹽化學性質非常穩定。鈉元素在化學反應中形成的粒子與什麼原子具有相同的核外電子數...