C 中的自增加運算子,C 運算子過載之自增 自減 運算子

2021-04-18 06:59:33 字數 2250 閱讀 8674

1樓:匿名使用者

簡單的說++運算子就是變數的內容加1個單位,但究竟1個單位是多少要看實際版定義的變權量的型別;

比如:定義int a = 0;那麼a++表示在下次使用a時a中存放的變數會變為1,即a = 0+1;如果定位為int *a = b(這裡我們假設b已經經過了定義,為int b[10]),此時a中存放的內容為b[0]的位址,我們假設b[0]的位址是2000,那麼此時的a++表示a中存放的位址加上1個int型別長(一般int長度為4個位元組),此時a應該指向了b[1]的位址,內容由原來的2000變為2004,相當於內容加了4;

對於字元變數和字元型指標變數是類似的,在系統中字元是用其對應的ascii值儲存的,相當於short int型,所以他的++運算類似上面的解釋,不過因為不同的字元有其對應的碼值,char a = 『a』,a++後a中的值變為b,也就是有碼值65變為了66,對於其他字元具體要看加1後碼值對應的字元究竟是什麼了;對應指標,不同的點是每次加1,其指標內容加的是char型個長度,指向的位址中的內容還是陣列下個字元所在位址中的內容;

不知道說的夠不夠清楚,希望對你有幫助!!

2樓:匿名使用者

如果是int 那麼就是值復加1

char也是一樣的

制 比如說 char a = 『a』

a++ a就變成了 b

如果是指標的話 表示位置移動 就是說這樣char *a = "abcd";

現在a指向的位置是 『a』的位置

a++以後 a就指向 『b』的位置

3樓:匿名使用者

字串的名字就是字串的首位址,對字串的名字++,當然就是等於 指標往專後移動一位咯。

比如屬說 char p[10];我們知道p是字串的名字,也是這個字串的首位址,我們可以對指標進行加法運算,p++就想當於 p = p+1,當然了,這裡不能這麼寫,這麼寫就報錯了,因為p是個字串常量指標。 我只是讓你理解而已。

char *p = new char[10]; p++;就不會錯。

4樓:匿名使用者

對於字元來說也是增一,對於指標來說是位址增一,相當於下標增加

5樓:泥蛋黃

指標的是指標後移一位

char的是assic碼表的那個 後移一位

c++運算子過載之自增(++)、自減(--)運算子

6樓:匿名使用者

#include

class point

point(int vx,int vy)

int getx()

int gety()

};//前置++運算子過載

point point::operator++()//前置--運算子過載

point point::operator--()//後置++運算子過載

point point::operator++(int)//後置--運算子過載

point point::operator--(int)void main()

在c++中自増運算子++, 放在變數前和變數後有什麼區別,該如何使用,求大神能通俗講解和舉例?

關於c++中過載自增運算子

7樓:匿名使用者

這個呼叫的預設拷貝函式

8樓:匿名使用者

this實際上就是呼叫成

copy員函式的物件位址。

如:time1.display();

若display()裡有用到this的話,this的值其實為&time1,

所以*this = time1.

time time::operator ++(int)

這個是後加加的函式原型,後++其實是先儲存值,在++,然後返回儲存的值。

time temp(*this); 就是要先儲存乙個臨時值,然後再呼叫前++,最後返回這個臨時變數。

語法的話 其實*this = time1;

相當於time temp(time1); 呼叫的是time的拷貝建構函式生成乙個和time1完全相同的物件temp。

9樓:匿名使用者

前置++和後置++的區別 temp儲存的是原來的值也就是int i = 0,j; j=i++ + 1;i先取原來的值0

用而後自加 time temp(*this);temp只是儲存了原專來的值並屬

返回給呼叫者。

C中不能被過載的運算子中是什麼運算子高手們幫忙解決

是c 的類成員函式指標呼叫運算子,是用來呼叫乙個類函式指標的。舉例 假設有乙個專classa類擁有乙個成員函式void classa func int i 則可屬以這麼用 void classa fp int i 定義乙個類函式指標。classa obj fp classa func 給這個類函式指...

c中是什麼運算子,C中是什麼運算子

按位取反,用於2進製運算。析構函式前也有這個符號,但沒有特殊意義。按位取反,類析構函式名前使用 是按位bai取反,或者析構du函式前 至於相反數,怎麼說zhi呢.他是針對於二進dao制而言的內求反,也就是說你不容能用十進位制去理解 比如二進位制1000求反是0111 但轉化為十進位制就行不通,呵呵,...

C語言運算子C語言運算子是怎麼運算的

內容來自使用者 wjian178 e68a84e8a2ad62616964757a686964616f31333433646432 1級優先順序 左結合 圓括號 下標運算子 指向結構體成員運算子 結構體成員運算子。2級優先順序 右結合 邏輯非運算子 按位取反運算子 字首增量運算子 字首減量運算子 正...