![]() |
![]() | #1 |
★★★★★★★★★★★★★ Join Date: 08 2004 Location: London, UK Age: 41
Posts: 16,531
Downloads: 8 Uploads: 0
Reputation: 482 | 7 | ![]()
Am confused.. int m[2] = { 1, 5 }; cout << ++*m; //this gives 2 my question is, why is the dereference operator evaluated before ++ inspite of the fact that ++ has a higher precedence than *? ![]() ANy pointers there? |
![]() |
![]() | #2 |
Ребе - коп! Join Date: 03 2003 Location: sfba Age: 44
Posts: 4,188
Downloads: 0 Uploads: 0
Reputation: 29 | 4 | ![]()
Операторы ++ и * имеют одинаковый приоритет и порядок выполнения справа налево. Скобки тебе не помогут?
|
![]() |
![]() | #3 |
Уже давно не младенец Join Date: 09 2002 Location: Yerevan, Armenia
Posts: 83
Downloads: 0 Uploads: 0
Reputation: 0 | 0 | ![]()
Everything seems to be fine... I don't see any problem here. To be simple... in case of prefix unary operators, the operators are executed in the right-to-left order... |
![]() |
![]() | #5 |
the mochinger Join Date: 02 2002 Location: Paranoid Android, @10:50 Age: 41
Posts: 1,894
Downloads: 2 Uploads: 0
Reputation: 204 | 4 | ![]()
just curious, what were you expecting?
|
![]() |
![]() | #6 |
Ребе - коп! Join Date: 03 2003 Location: sfba Age: 44
Posts: 4,188
Downloads: 0 Uploads: 0
Reputation: 29 | 4 | ![]()
guess he expects 5
|
![]() |
![]() | #7 |
the mochinger Join Date: 02 2002 Location: Paranoid Android, @10:50 Age: 41
Posts: 1,894
Downloads: 2 Uploads: 0
Reputation: 204 | 4 | ![]()
but how can one ++arrays?
|
![]() |
![]() |
Thread Tools | |
|
На правах рекламы: | |
![]() | |