Quantcast
Channel: 配列タグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 821

C++ array[i++]はarray[i]なのかarray[i+1]なのか

$
0
0

結論から

array[i++]array[i]です。
ただし、iはインクリメントされi + 1になります。

検証

コード

#include<iostream>
intmain(){intarray[5];//配列に数値を格納(array[0] = 0, array[1] = 1 ...)for(inti=0;i<5;i++){array[i]=i;}//array[i++]とiを出力for(inti=0;i<5;){intnum=array[i++];std::cout<<num<<" "<<i<<std::endl;}}

 出力

0 1
1 2
2 3
3 4
4 5

配列の添え字をインクリメントしても、インクリメントされた添え字の要素が返ってくるのではなく、元の添え字の要素が返ってくること、iはインクリメントされていることが確認できますね。

追記

題名にはC++と書きましたが、Cはもちろん私の調べではjavaもこのような特性があるようです。また、pythonはそもそもインクリメント演算子がないそうです。


Viewing all articles
Browse latest Browse all 821

Latest Images

Trending Articles