過去ログ
No.1255 配列への書き込みを禁止する方法
[戻る]
[ホームページ]
No.2614
書き込みNG
投稿者---チェリーC(2004/09/02 11:07:04)
unsigned char rom[24];
のような配列への書き込みをNGにしたい場合
どんな方法があるでしょうか?
No.2615
Re:書き込みNG
投稿者---Ban(2004/09/02 11:10:26)
>unsigned char rom[24];
>
>のような配列への書き込みをNGにしたい場合
>どんな方法があるでしょうか?
const なポインタなり参照なりを用意して
そちらしか参照させない。
No.2616
Re:書き込みNG
投稿者---nop(2004/09/02 11:25:27)
>unsigned char rom[24];
>
>のような配列への書き込みをNGにしたい場合
>どんな方法があるでしょうか?
const unsigned char rom[24] = { /* 初期化子 */ };
但し、コンパイラに対する指定でしかない。
本当に書き換え不可な領域に置かれるかどうかは、
処理系や環境に依存する。
No.2617
Re:書き込みNG
投稿者---江戸門電鉄(2004/09/02 21:15:53)
>unsigned char rom[24];
>
>のような配列への書き込みをNGにしたい場合
>どんな方法があるでしょうか?
状況が良くわからない。拒否したいのは、誰が、いつ、どのように行う書き込みの事なのでしょうか。
それともconst unsigned char rom[24];で済む話?
No.2618
Re:書き込みNG
投稿者---Sciggepy(2004/09/02 22:32:24)
Windowsに限って言えば、VirtualAllocで割り当てたメモリをVirtualProtectで書き込み禁止にできます。
詳細