C++

char* と char[] の違い

Tatsuya Yatagawa
日経ソフトウェアの2013年2月号に書かれていた記事で、C++ (あるいはC言語) のchar*とchar[]の違いについて触れてありました。普段はstd::stringしか使わないので、こんな違いがあるとは思わなかった。次のコードを見てください。 #include <stdlib.h> int main() { char* var = "this is charactors"; var[0] = 'T'; printf("%sn", var); } 一見正しそうに見えるし、実際コンパイルは通る (なんと!!) 。だけど6行目で実行時エラーが起こります。なんでもchar*に渡 ...