Cプログラミング
 Computer >> コンピューター >  >> プログラミング >> Cプログラミング

free()は、割り当てを解除するメモリのサイズをどのように認識しますか?


free()関数は、malloc()、calloc()、およびrealloc()を使用して割り当てられている間、メモリの割り当てを解除するために使用されます。 freeの構文は単純です。ポインタでfreeを使用するだけです。その後、メモリをクリーンアップできます。

free(ptr);

free()はパラメーターとしてサイズを取りませんが、ポインターのみを取ります。それで、問題は、free()関数が割り当てを解除するブロックのサイズをどのように知るのかということです。

メモリ割り当てに動的メモリ割り当て手法を使用する場合、これは実際のヒープセクションで行われます。要求されたサイズよりも1ワード大きくなります。この余分な単語は、サイズを格納するために使用されます。このサイズは、メモリスペースをクリアするときにfree()によって使用されます。


  1. Windows 10 で RAM のサイズと速度を確認する方法

    RAM (ランダム アクセス メモリ) は、PC の全体的なパフォーマンスに大きく影響する要素の 1 つです。プログラムは開いている間 RAM を消費するため、複数のアプリでマルチタスクを行うには十分なメモリが必要です。 Windows 10 のタスク マネージャーを使用して、PC の容量を確認できます。 Ctrl+Shift+Esc を押してツールを起動します。ウィンドウの上部にある [パフォーマンス] タブをクリックします。次に、左側のペインで [メモリ] をクリックします。 「メモリ」ヘッダーの右側に表示される数字 (この場合は 32 GB) を見ると、システム内の RAM の量を簡

  2. ウェブサイトが合法かどうかを調べる方法

    インターネットは、役立つだけでなく、ビジネスやインフラストラクチャに必要な数少ないサービスの 1 つです。メッセージング アプリから原子力発電所まで、インターネットは数多くの大きなサービスを提供してきました。しかし、すべての恩恵の中でも、いくつかの有毒な効果があります. シンプルなインターネット接続でインターネットの世界をサーフィンできるようになった今、毎日新しいウェブサイトに出くわしています。これらのウェブサイトの山の中には、無許可または地域の違法なコンテンツに到達する恐れがあります.違法なコンテンツを含む Web サイトを探索すると、危険にさらされるだけでなく、多くの法的問題が発生します