The UNIX and Linux Forums  


Go Back   UNIXおよびLinuxフォーラム > トップフォーラム > UNIXの詳細&エキスパートのためのユーザー
Googleのunix.com



UNIXの詳細&エキスパートのためのユーザー 専門家への専門家。先進のUNIXは、 UNIXのコマンドは、 Linux 、オペレーティングシステム、システム管理、プログラミング、シェル、シェルスクリプトは、 Solarisのは、 Linux 、 HP - UXのは、 AIXので、 OS X 、 BSDのこちらをご覧ください。

その他のUNIXおよびLinuxフォーラムトピックは参考にすること
スレッド スレッドスターター フォーラム 返信 最後の投稿
memsetの質問 arunkumar_mca UNIXのダミー質問と回答のため 7 2007年8月9日 01:08午後
memset fuctionについて ranj @ chn 高レベルのプログラミング 3 2006年1月31日 08:59午前

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek を搭載 Powered by Google
 
LinkBack スレッドツール このスレッドを検索 スレッドを評価 表示モード
  #1固定リンク)  
Old 2008年7月16日
サルヴィ salvi is offline
登録ユーザー
  
 

参加日: 2008年7月
投稿数: 7
memset対calloc

親愛なる友人、
いずれかの私memsetとcalloc関数をC言語での違いが分かる

よろしく、
Selvi
  #2固定リンク)  
Old 2008年7月16日
zaxxon's Avatar
zaxxon zaxxon is online now Forum Staff  
モデレータ
  
 

参加日: 2007年9月
場所:ドイツ
投稿数: 2,302
ああああ...最高の移動中/高レベルのプログラミングsubforum思います隣に掲示(答えていない場合) 。
  #3固定リンク)  
Old 2008年7月16日
シャムロック shamrock is offline Forum Advisor  
登録ユーザー
  
 

参加日: 2007年10月
場所:アメリカ合衆国
投稿数: 753
memset ( )は、ユーザーには、署名のない文字の範囲に制限されている値を供給バイト文字列を初期化します。任意のメモリを割り当てることはありません。

calloc ( ) 、あらゆるタイプのメモリを割り当てます( INTは、構造体)文字とは、ゼロに初期化するストレージです。

両方の[特定の記憶領域を初期化memset ( )は、さらに2つの機能を独占されて]は特定のオブジェクトタイプのストレージを1つだけのメモリを割り当てます。
  #4固定リンク)  
Old 2008年7月16日
osulinux osulinux is offline
登録ユーザー
  
 

参加日: 2008年6月
投稿: 31
calloc ( )は通常の配列を作成するために使用されています。またmalloc ( )のようなものは、そのメモリが割り当てられることの( )がシャムロックポイントを0に割り当てられたメモリセットcalloc 。

callocの効果( )のmalloc ( )が続くことと同じですmemset ( ) 。
  #5固定リンク)  
Old 2008年7月17日
サルヴィ salvi is offline
登録ユーザー
  
 

参加日: 2008年7月
投稿数: 7
親愛なる友人、
お返事をいただき、ありがとうございます。
実際に私は次の文を見た時は、トレースルートのコードを読んでいた。

outip \u003d ( * ) malloc ( ( ) packlen )署名のない構造体のIP ;
( outip \u003d\u003dがNULL ) (
Fprintf (はstderr 、 " % sを: malloc : % \ Ñ " 、プログレッシブ、 strerror (errno) ) ;
出口( 1 ) ;

memset ( (文字* ) outip 、 0 、 packlen ) ;

*. outipのIPデータ構造体の一つです
packlenは、パケットのサイズ(すなわち、 40バイト)です。


私の疑問、なぜここには、 calloc関数を使用していません。

よろしく、
Selvi 。
  #6固定リンク)  
Old 2008年7月17日
ジムマクナマラ jim mcnamara is offline Forum Staff  
...@...
  
 

参加日: 2004年2月
場所: NM
投稿:5,794
それ以前のCコードです( mallocはないが、現代とキャストする必要があります) 。

私は推測している:
一部の古いcallocの実装の問題が実際に割り当てられたメモリをゼロにしていた。だからおそらく、これが問題にされた符号を知っていた。

さらに、 callocとにかくmemset呼び出しに相当する場合-を使用するので、 1 : malloc + memsetまたはcallocを選択されています。私は個人的にめったにcallocを使用します。
  #7固定リンク)  
Old 2008年7月17日
osulinux osulinux is offline
登録ユーザー
  
 

参加日: 2008年6月
投稿: 31
その理由は、 calloc ( )の配列へのアクセスを意味しています。彼らはここでmallocを配列として使用するメモリ領域の治療ではない( ) 。 calloc ( )はほとんどが私に、このような場合で使用するようには意味をなさない使われています。それについて考え、何を、この場合には、どのタイプの配列を作るのだろうか?
Closed Thread

ブックマーク

スレッドツール このスレッドを検索
このスレッドを検索

高度な検索
表示モード このスレッド
このスレッド

投稿ルール
あなた ことができない。 新しいスレッドを投稿
あなた ことができない。 返信の投稿
あなた ことができない。 添付ファイルの投稿
あなた ことができない。 自分の投稿を編集

BBコード なる 〜の上に
スマイリー なる 〜の上に
[イメージ] コードは 〜の上に
HTMLコードは、 オフ
トラックバック なる 〜の上に
ピングバック なる 〜の上に
Refbacks なる 〜の上に




すべてGMT -4です。現在の時刻は 09:46午前


提供: vBulletin、著作権© 2000 - 2006、Jelsoft企業株式会社。言語翻訳による電源
vBCredits v1.4著作権© 2007 - 2008 、 PixelFXスタジオ
は、 UNIXおよびLinuxフォーラムのコンテンツ著作権© 1993 〜 2009 。すべての権利を管理しReserved.Ad RedTyger

コンテンツ関連のURLで vBSEO 3.2.0