年始 (1)
2025/01/06
はじめに
2025年になったが慣れるまで(なにに?)はダラダラやっていく。
“Count” か “Number” か
前回やった名前の続きだ。
for
でぐるぐる回すとき、局所変数は i
とかでよいと思う。
私は “loop” の略で lp
を使っているが、特に意味は無い。
意味なんてあるような無いような変数なので i
みたいな名前の方がよいかもしれないと思い始めたところだ。
あれかね、Fortran とかが “I” から整数の変数名になるから i
が使われてるのかね(Fortranはほとんど知らない)。
その回す回数が変数なのだったら “count” 的な名前を付けるのは不自然ではないだろう。
そうではなく個数を表したいときはどういう名前が良いのか。
例としては malloc(size_t n)
の n
に当たる名前だ。
「プログラミング言語C 第2版」ではそういう名前になっていたが「Cクイックリファレンス」では malloc(size_t size)
になっていた。
ちなみに calloc
はどちらの本も calloc(size_t n, size_t size)
になってた。
K&R に載っているとはいえ n
はさすがになあ、と思うので名前を付けたい。
ChatGPT氏に訊くと候補を出してくれた。
- count (カウントする数)
- number (一般的な数量)
- quantity (分量や数量)
- total (合計)
- amount (量)
私のイメージとしても “count” か “number” なので大きく外れていないようだ。
ではどっちがよりふさわしいかとなると判断が付かない。。。
元の n
は “number” から来ているのかな?
だったらそれでよいか。
略すと num
・・・と昔の私なら迷わず使っていただろうが、最近は省略して良いかどうかを悩むようになってきた。
略すのがダメというわけではないのだろうが、自分がこのくらい普通だろうと思う略が時代に合わなくなってきたという恐ろしさ。
“number” の num
はまあよいと思うのだが、そもそも略さなくてもよいのでは、というところについて考えてしまうのだ。
名前を付けるときはほぼ略す文化だったので、なんかもう自分の中でよくわからなくなってしまったのだな。
ただ “loop” の lp
はわかりづらいので考え直した方がよさそうだとは思った。
じゃあ “number” なり “num” なりでよいかというと、ちょっとまた別の要素が入ってくる。
今作っているのは Bitcoin 関係のコードなのだが、データ長は “length” を、個数については “count” を使っているのだ。
“number” 的な名前が入った変数は 1つもなかった。
となると “count” かなぁ、と弱気になっている。
でも、カウントするようなものでもないと思うのだよ。
思いはするのだが、英語への理解が足りていないので辞書で調べた範囲でしかわからんのだった。
英語か、やっぱり英語なのか・・・。
<memory.h>
なんとなくありそうな #include <memory.h>
だが gcc だとこんなファイルだった。
#ifndef _MEMORY_H
#define _MEMORY_H 1
#include <features.h>
#ifndef _STRING_H
# include <string.h>
#endif /* string.h */
#endif /* memory.h */
たぶん、<string.h>
の中に “str-“ の関数と “mem-“ の関数があるので間違われることが多いとかなんだろう。
C++ の <memory>
はちゃんとある。
C でも linux/memory.h
はそれはそれで存在する。
難しいね。