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

回答編集履歴

2

関数ポインタ

2016/08/06 15:49

投稿

yumetodo
yumetodo

スコア5852

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

2016/08/06 15:49

投稿

yumetodo
yumetodo

スコア5852

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  # 考えることが多い
2
2
 
3
- ポインタはどこを参照するか(ポインタ型変数の値そのもの)と参照先(間接参照演算子``*``で得られるもの)の2つが変更可能なので、そこら辺が理解を妨げる要因かなと思います。それだけ思考が増えるので。C++の参照は参照先しか変更できず、どこを参照するかは変更できないので思考が節約できるかもしれません。
3
+ ポインタはどこを参照するか(ポインタ型変数の値そのもの)と参照先(間接参照演算子``*``で得られるもの)の2つが変更可能なので、cv-qualifierもの双方に対して修飾ができたりで、そこら辺が理解を妨げる要因かなと思います。それだけ思考が増えるので。C++の参照は参照先しか変更できず、どこを参照するかは変更できないので思考が節約できるかもしれません。
4
4
 
5
5
  # 配列とポインタの兼ね合い
6
6