回答編集履歴

1

追記

2018/05/23 16:50

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -44,6 +44,8 @@
44
44
 
45
45
  move_array(a, b, 6);
46
46
 
47
+ // move_array(&a[0], &b[0], 6); 明示的に書いても可
48
+
47
49
  ```
48
50
 
49
51
 
@@ -85,6 +87,8 @@
85
87
 
86
88
 
87
89
  スワップ処理に関しては、検索すればすぐ見つかるはずです。
90
+
91
+ べた書きしても良いですし、swap関数を用意してもかまいません。マクロは取扱注意です。
88
92
 
89
93
 
90
94
 
@@ -129,3 +133,31 @@
129
133
  これもバグではありませんが、sizeof演算子を上手に利用すると簡潔に書けます。
130
134
 
131
135
  関心があるようでしたら調べてみてください。
136
+
137
+
138
+
139
+ 変数nの取り扱いについて
140
+
141
+ ---
142
+
143
+ > ```C
144
+
145
+ int n = 0;
146
+
147
+
148
+
149
+ > ...
150
+
151
+
152
+
153
+ > move_array(&a[6], &b[6], 6);
154
+
155
+ show_array(&a[6], n);
156
+
157
+ > ```
158
+
159
+
160
+
161
+ これだとnが初期値0のまま変わりませんね。
162
+
163
+ move_arrayの第3仮引数の名前がnですが、これはmain関数スコープの変数nとは**無関係**です。