問題タブ [memset]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
4 に答える
371 参照

c - -1 は有効なポインタ アドレスですか

重複の可能性:
ポインター (アドレス) が負になることはありますか?

memset を使用して構造体をすべて -1 に初期化することを検討しています (符号付きの数値を使用せず、ゼロが有効な値であるため)。

-1 は有効なポインター アドレスですか? 私のアイデアに他に問題はありますか?注: プラットフォームは linux/gcc/x86 です

PSすべてのポインターではなく、すべての無効な値に対してゼロが有効な構造体を初期化しようとしているため、オプションで1つの関数で部分的な初期化を行い、後で初期化されていないフィールドをデフォルト値に初期化できます。cでこれを行うパターン/戦略がある場合は?

0 投票する
5 に答える
2399 参照

c++ - memset() がループ本体内にあると正しく動作しないのはなぜですか?

昨日、ループと配列を含む小さなコードを C++ でプログラミングしました。プログラムでは、ループが最初からやり直すたびに配列をリセットする必要があります。ただし、使用する場合

その後、配列はすべて0にリセットされません。このプログラムでは、次を使用しました。

代わりは。

ただし、ループは関数ほど明確ではなく、追加の変数が必要だと思います。言うまでもなく、これは memset() 関数の魔法よりも何百万倍もクールではありません。これについて教えていただけますか?

0 投票する
3 に答える
10777 参照

c - memset の代替

構造体の配列を初期化したいのですが、memset() の 2 番目のパラメーターは int を取ります。同じことをするが、 (void *) で2番目のパラメーターを持つ別の関数はありますか? memcpy() を考えましたが、配列全体に値を設定しません。何か案が?

構造体:

コード:

0 投票する
3 に答える
8038 参照

c - memset が char ではなく int を取るのはなぜですか?

がの代わりに を 2 番目の引数としてとるのに対し、orのようなものではなく a をmemsetとるのはなぜですか?intcharwmemsetwchar_tlonglong long

0 投票する
4 に答える
5521 参照

c - メモリ割り当てに使用されるmemset?

私はmsdnでこの例を見ていました:

http://msdn.microsoft.com/en-us/library/ms894209.aspx

mbiMemory にメモリを割り当てる方法として memset を使用しているようです。大丈夫ですか?この方法でメモリを使い果たしませんか?ありがとう!

0 投票する
2 に答える
1051 参照

c - malloc 後の memset

Linux 製品の 3 つのライン (バージョン) があります。V1 は顧客で正常に動作します。V2 と V3 がクラッシュし、修正は malloc 呼び出し後の memset 呼び出しのようです。

このトピックに関するより深い説明は何ですか? memset が問題を解決したのはなぜですか?

0 投票する
5 に答える
469 参照

c++ - 同じ int 値を int の配列に設定するにはどうすればよいですか

私は変数を持っています:

すべての配列値に同じ int を設定したい。memset はバイトで動作するため使用できません。

どうやってやるの?

0 投票する
1 に答える
573 参照

xcode - ライブラリ内の静的に割り当てられた zlib バイト配列の memset は、Objective-C++ プログラムをクラッシュさせます

zlib.h で定義された、Byte 型の静的に割り当てられた C 配列を使用するライブラリを作成しています。memset の呼び出しでコードがクラッシュすることがわかりました。完全なコードは次のようになります。

kLabelBufSiz * sizeof(Byte) の値を事前に計算し、memset の数値を使用してみましたが、違いはありませんでした。これはシングルスレッド プログラムで、2 つの呼び出しの間にコードがないため、メモリとポインターが変更されていないことがわかります。sizeof(Byte)が1であることを確認しました。配列型をchar型に変更してみたらクラッシュしなくなったので、ここはByte型が影響しているようです。

このライブラリ関数を呼び出す小さなプログラムを作成しましたが、そのプログラムはクラッシュしません。クラッシュしないプログラムは純粋な C++ ですが、クラッシュするプログラムは Objective-C++ です。gcc-4.2とXCodeを使用して、Mac OSX 10.6.7で両方を構築しています。ここで問題を引き起こす可能性のある ObjC++ について何かありますか? これまで ObjC++ から呼び出された C++ ライブラリで問題が発生したことはありませんが、存在しないわけではありません。どんな助けでも大歓迎です!

0 投票する
3 に答える
27269 参照

c - C言語のmemset関数

私は現在memset関数を研究していますが、すべての例は次のようにchar配列に関するものです。

このchar配列のすべての要素を0に設定します。

memsetがint配列またはfloat配列に適用できるかどうか疑問に思いましたか?