回答編集履歴
2
関数ポインタ
answer
CHANGED
@@ -26,6 +26,12 @@
|
|
26
26
|
int *p;//同じ
|
27
27
|
```
|
28
28
|
|
29
|
+
や関数ポインタ
|
30
|
+
|
31
|
+
```c
|
32
|
+
typedef int (*func_t)(int, double, const char*, size_t);//型名はfunc_t
|
33
|
+
```
|
34
|
+
|
29
35
|
に代表されるように文法が絶望的に汚い。
|
30
36
|
|
31
37
|
C99のrestrict、C11で配列の最低要素数を関数の引数に指定できるようになったことで少しずつマシになってきてはいますが、残念ながら、C99はともかく、C11に対応した入門書はないに等しい現状があり・・・
|
1
cv-qualifier
answer
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# 考えることが多い
|
2
2
|
|
3
|
-
ポインタはどこを参照するか(ポインタ型変数の値そのもの)と参照先(間接参照演算子``*``で得られるもの)の2つが変更可能なので、そこら辺が理解を妨げる要因かなと思います。それだけ思考が増えるので。C++の参照は参照先しか変更できず、どこを参照するかは変更できないので思考が節約できるかもしれません。
|
3
|
+
ポインタはどこを参照するか(ポインタ型変数の値そのもの)と参照先(間接参照演算子``*``で得られるもの)の2つが変更可能なので、cv-qualifierもその双方に対して修飾ができたりで、そこら辺が理解を妨げる要因かなと思います。それだけ思考が増えるので。C++の参照は参照先しか変更できず、どこを参照するかは変更できないので思考が節約できるかもしれません。
|
4
4
|
|
5
5
|
# 配列とポインタの兼ね合い
|
6
6
|
|