回答編集履歴

1

回答に追記

2019/08/10 14:52

投稿

y_waiwai
y_waiwai

スコア87774

test CHANGED
@@ -7,3 +7,21 @@
7
7
 
8
8
 
9
9
  ってはなしだけど、言語仕様がそうなってるから、ということだと納得しときましょう
10
+
11
+
12
+
13
+ ---
14
+
15
+ C言語で、
16
+
17
+ char aaa[16]="あいうえお";
18
+
19
+ がなんで行けるんだ!という方が説明しやすいです。
20
+
21
+ 実はこれは代入という動作はしていません。コンパイル時に解釈を行い、aaaの領域に、文字データを割り当てている、ってことなんですね
22
+
23
+ つまりー、”あいうえお”のデータを持った領域を定義している、ということで、実行時にはコピー動作は行われてません。
24
+
25
+
26
+
27
+ #まあそりゃ実行時にコピー動作を行う処理系もないとは言えませんが