平成28年春期午後問9

ちとさん  
(No.1)
https://www.fe-siken.com/kakomon/28_haru/pm09.html
設問3のaの解説にて

変数 p_rn と変数 p_cn はプログラム中の初期化処理より、以下を表現していることがわかります。
p_rn:配列変数 pat の行数(p_rn…pattern row num)
p_cn:配列変数 pat の列数(p_cn…pattern col num)

とありますが、この問題では
sizeof patが4、sizeof pat[0]が2、sizeof pat[0][0]が1という解釈でよろしいのでしょうか。
上記の解釈が正しい場合、p_cnを求める際になぜsizeof pat[0][0]で割っているのでしょうか。
2021.10.31 16:57
chihiroさん 
FE・プラチナエキスパート
(No.2)
sizeof演算子で得られるのはメモリサイズです。
例えばpatの要素数が4、要素1個あたりのメモリサイズが5バイトであれば、
sizeof patは4×5=20(バイト)となります。
p_rnは(pat全体のメモリサイズ)/(patの1列のメモリサイズ)でpatの行数を、
p_cnは(pat1列のメモリサイズ)/(patの要素1個のメモリサイズ)でpatの列数を求めています。
2021.11.01 13:13
ちとさん  
(No.3)
回答ありがとうございます!

そいうことだったのですね!納得しました!
2021.11.01 20:28

返信投稿用フォーム

スパム防止のためにスレッド作成から30日以上経過したスレッドへの書き込みは禁止しています。

その他のスレッド


Pagetop