問題タブ [strcpy]

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

c - C strcpy() - 悪?

strcpy()Cの機能が悪い、悪いと思っている人もいるようです。strncpy()通常はバッファ オーバーフローを回避するために使用する方がよいことは認めますが、次の (このstrdup()関数を使用することができなかった人のための関数の実装) は、安全に使用し、オーバーフローすることはstrcpy()ありません。

*s2を保存するのに十分なスペースがあることが保証されており*s1、を使用するとstrcpy()、結果を別の関数に保存して、strlen()後で不要な (この場合) の長さパラメーターとして使用する必要がなくなりますstrncpy()。しかし、長さパラメータを必要とするや を使ってこの関数を書く人strncpy()もいます。memcpy()人々がこれについてどう思うか知りたいです。特定の状況で安全だと思う場合strcpy()は、そう言ってください。このような状況で使用しない正当な理由がある場合は、それを教えてください。このような状況で使用するstrcpy()方がよい理由を知りたいです。大丈夫だと思うが、ここにない場合は、説明してください。strncpy()memcpy()strcpy()

memcpy()基本的に、他の人が使用するときに使用する人strcpy()もいれば、プレーンを使用する人もいる理由を知りたいだけですstrncpy()。3つよりも1つを優先するロジックはありますか(最初の2つのバッファチェックを無視します)?

0 投票する
7 に答える
1625 参照

c++ - strcpy... strncpy と null で終了する strcpy_mine に置き換えたい

手がかりはタイトルにありますが、基本的には strcpy の 800 以上のインスタンスを持つコードを継承しています。新しい関数を作成してから、strcpy を strcpy_mine に置き換えたいと考えています。

そのため、strcpy_mine にどのようなパラメーター リストが含まれるかを調べようとしています。

私は試した:

ただし、sizeof は常に 4 pCopyMe はポインターです

私がしたくないことは交換することです

何か案は?(strcpy_l は利用できません)

0 投票する
6 に答える
1861 参照

c++ - 次のコンテキストでのポインタと配列の違いは何ですか?

0 投票する
10 に答える
199014 参照

c - strcpy の代わりに strncpy を使用する必要があるのはなぜですか?

編集:例のソースを追加しました。

私はこの例に出くわしました:

この出力を生成したもの:

これは、なぜ誰もがこの効果を望んでいるのか疑問に思います. 混乱しそうです。このプログラムは、Tom Bro763 で誰かの名前 (Tom Brokaw など) を基本的にコピーできると思います。

strncpy() over を使用する利点は何strcpy()ですか?

0 投票する
8 に答える
8713 参照

c - strcpy使用時のアクセス違反?

strcpy C 関数を再発明しようとしましたが、実行しようとすると次のエラーが発生します。

行でエラーが発生します*dest = *src;。コードは次のとおりです。

編集:うわー、それは速かったです。呼び出しコードは次のとおりです (strcpy は mystring.c で定義されています)。

0 投票する
9 に答える
22170 参照

c++ - char配列へのポインタがその配列に文字を割り当てるためにstrcpyを必要とし、二重引用符の割り当てが機能しないのはなぜですか?

最初の例は、ポインタを削除しようとすると機能しません。ヌルターミネータを追加するとプログラムがハングするか、ヌルターミネータがないと次のようになります。

Debug Assertion Failed Expression: _BLOCK_TYPE_IS_VALID(pHead->nBlockUse)VisualStudio2008から

では、strcpyの代わりに二重引用符を使用するとどうなりますか?どちらも文字列を完全に削除し、デバッガーは何も変わりません。

0 投票する
7 に答える
13735 参照

c - dest バッファが src バッファより小さい場合の strcpy

strcpy と strncpy の違い/欠点を理解しようとしています。誰か助けてください:

出力は次のとおりです。

質問: ソース文字列がどのように変更されたのかわかりません。説明によると、strcpy は '\0' に遭遇するまでコピーし続ける必要があります。

説明してください。

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

c++ - char 配列をコピーしない、関数 swap が正しくコンパイルされない、stringPtr が変更されない

//ヘッダー ファイル内: クラス定義:

// cpp ファイルで、メンバー関数を定義します

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

c++ - コードで strcpy ランタイム エラーが発生するのはなぜですか?

コードを Windows (Mac から移動) で動作させようとしていますが、何らかの理由で strcpy 呼び出しに関連するランタイム エラーが発生します。

助けてください!!

Cust.h

Cust.cpp

main.cpp

P3_custData.txt

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

c++ - strcpyのようなものにしようとするポインタでプログラムがクラッシュする

これは今日の私の2番目の問題であり、ポインターは私に悪夢を与えています。strcpy()関数と同じことを行うプログラムを作成しようとしています。一度試してみると、クラッシュして、コード内のポインターの問題であると100%確信しています。ある種の初期化されていないポインタ(*コピー)があるので..しかし、私はそれにNULLを割り当てました...それで、Null割り当てが正確に何のためにあるのか誰かに教えてもらえますか?私はその使用法を誤解していると思うので。そして、正常に実行するためにプログラムにどのような修正を加えることができるか教えてください。

前もって感謝します 。