teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

2

ミスを修正

2016/10/22 06:13

投稿

mit0223
mit0223

スコア3401

answer CHANGED
@@ -12,9 +12,9 @@
12
12
  に変更した上で、
13
13
 
14
14
  ```C
15
- tmp = (pt + j)*;
15
+ tmp = *(pt + j);
16
- (pt + j)* = (pt + j - 1)*;
16
+ *(pt + j) = *(pt + j - 1);
17
- (pt + j - 1)* = tmp;
17
+ *(pt + j - 1) = tmp;
18
18
  ```
19
19
 
20
20
  のように変更する必要があります。

1

左辺値の説明を修正

2016/10/22 06:13

投稿

mit0223
mit0223

スコア3401

answer CHANGED
@@ -3,7 +3,8 @@
3
3
  (pt + j) = (pt + j - 1);
4
4
  (pt + j - 1) = tmp;
5
5
  ```
6
- の2行に出ているのではないでしょうか? (pt+j) や (pt+j-1) はポインタなので、左辺値にはできず、代入することはできません。このプログラムで構造体の中身を入れ替えたいので、tmpの宣言を
6
+ の2行に出ているのではないでしょうか? (pt+j) や (pt+j-1) は演算結果なので、左辺値にはできず、代入することはできません。```int a,b; a+b = 3;```とできないのと同じす。
7
+ このプログラムでは構造体の中身を入れ替えたいので、tmpの宣言を
7
8
  ```C
8
9
  struct seiseki tmp;
9
10
  ```