問題タブ [strdup]

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 投票する
0 に答える
1472 参照

c - strdup によって割り当てられたメモリを解放する

strdup によって割り当てられたメモリを解放するにはどうすればよいですか? この関数の最後に free(linepos) を使用しようとしましたが、プログラムが失敗します。この関数の外に linepos がないため、他の場所で解放することはできません。前もって感謝します。

編集:ここに他の機能があります。申し訳ありませんが、古いソースをコピーして貼り付けてください。これは新しいものです。

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

c++ - strdup と無料使用

私はこのコードを試しています:

どこ

free コマンドの後、printf でエラーが発生しました。

strdup と free の使用でエラーが発生していますか?

ありがとう

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

pointers - 関数の引数を介してポインターを返しますが、それに割り当てられたデータを失います。(C)

私はこのサイトを初めて使用するので、この最初の投稿で何か問題がありましたら、お詫び申し上げます。私がコードを書いた方法 (再利用性のために作成されたコードを含む) では、char* 配列を使用する必要があります。渡された char* をすべて小文字に変換しています。私が直面している問題は、newString2 の解放に関するものです。これを newString に割り当てているため、これを解放すると、newString に割り当てた情報が確実に失われ、convertedKey に割り当てられたデータが失われます。割り当てられたメモリを正常に解放する方法を見つけるだけでなく、関数の引数を介して変換された文字列のデータを返す方法を見つけることについて、私は穴にいます。それは可能ですか?以下は、小文字に変換するための現在の関数です。私もstrdupに非常に慣れていないので、正義を与えていないと確信しています。

リスト内の私の構造体は次のとおりです。

そして、私のドライバーでは、ListElementPtr を作成し、それにキー値を割り当てています。たとえば、

助けてくれてありがとう!

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

c - Cで文字列の先頭からcharを削除する安価な方法は何ですか?

charC で文字列 (char 配列) から最初のものを削除するには、非常に安価なアルゴリズム (プロセッサとメモリ) を作成する必要があります。

私は現在使用しています:

しかし、それを行うためのより安価な方法があれば知りたいです。文字列valueは動的に割り当てられます。