問題タブ [strcat]

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

c - マロックよりも多くの文字を書く。なぜ失敗しないのですか?

なぜ次のことが機能し、ある種のセグメンテーション違反をスローしないのですか?

ただし、追加すると

strcatは割り当てられたよりも多くのメモリを使用するため、この呼び出しは失敗するべきではありませんか?したがって、すべきではありません

また、16バイトを解放しようとするため失敗しますが、26バイト( "/ usr / bin / 012RANDOMBUNNIES \ 0")を使用しましたか?

よろしくお願いします!

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

c - Scanf が不本意ながら char 配列を消去する

次のプログラムを参照してください。

その特定の scanf が暗示されることなく s3 配列を消去する方法は独特です。なぜこれが起こるのですか?

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

string - Matlabの文字から文字列への変換の問題。使用する関数は何ですか?

x(1)は1、x(2)は2など...間に5つのスペースがあります。size(x)= 1 23 num2str、strcatを使用して試した23列の1行ですが、できません。数字をクラブします。y = num2str(x)、y = strcat(x)

x(1)= 1234、x(2)= 56789、x(3)= 7654

上記を実行するには、どの関数を使用する必要がありますか?

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

c - strcat 風変わりな振る舞い

私はこの単純な C プログラムを書きましたが、strcat のこの奇妙な振る舞いを完全には理解できませんでした。

strcat は path に適用されますが、最終的に path2 も変更されます。誰かが何が起こっているのか教えてくれたらとてもありがたいです:)ありがとう

走る

./program 3 example/mountdir/location2.csv example/rootdir/location2.csv

出力:

例/rootdir/location2.csv

エンドライン

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

c - C記憶の質問

上記のコードでは、奇妙な記号または数字の後に「hi」が続きます。strcatがバッファに追加されていることがわかります。そして、私は通常、バッファ内のメモリをゼロにします。しかし、なぜ私は通常それをしなければならないのか興味があります。

printf("%i", buffer);strcatなしで実行すると、ランダムな数値が出力されます。その数は何ですか?私が何かでそれを埋める前に、誰かがバッファにあるものを説明するツタンカーメンを説明したりリンクしたりできますか?

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

c - charを定数char*に結合するにはどうすればよいですか?

2つの定数char*を結合し、結果を返す関数があります。私がやりたいのは、charを定数char*に結合することです。

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

c - crtを使用して線形時間でC文字列を連結する

const char * s [0]、s [1]、...s[n-1]をCの1つの長いcharout[]に連結したいとします。

正式には(簡単にするために、バッファオーバーランを無視します):


もちろん、これは簡単な作業です。outへのポインタから始めて、入力文字列をループしながら 、charごとにそれを進めます。

別のアプローチ(まだ線形時間です)は、最後へのポインターを保持することで
あり、各s[i]で次のことを行います。

ただし、その方法を知っている標準のCRT関数があり、コピーされた文字の数(または同等に、コピーされた後の次の文字へのポインター)を返す場合、コードはよりクリーンになりstrcpy()ます

私が考えることができる唯一のCRT関数はそれを実行しますが、カウントを返す 単純な関数ほど効率的sprintf()ではないことは明らかです。
strcpy()

私が欠けているような機能はありますか?

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

strcpy - strcpy と strcat は時々問題を引き起こします

こんにちは、私は以下のようなコードを持っています

このコードは機能しているように見えますが、XCode 分析関数を使用すると、「関数呼び出し引数は初期化されていない値です」と表示され、プログラムがクラッシュすることもあります..削除すると正常に動作します.何が問題なのですか? ありがとう

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

c - StrtokとStrcatの競合

strtokとstrcatを使用しようとしていますが、2番目のprintfが表示されません。コードは次のとおりです。

tmpの入力が1/2/3/4/5/6の場合、コンソール出力は13456になります。2は常に欠落しています。誰かがこれを修正する方法を知っていますか?

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

c - strcat() は、スペースで区切られた文字列を作成しようとすると文字列を削除します。(Cプログラミング)

私はここ数時間、この問題と格闘してきました。これは、3 年間のプログラミング学習で遭遇した奇妙な問題の 1 つです。

stdin から argv にある文字列を連結して、スペースで区切られたより長い文字列を作成しようとしています。これは私が最初に書いたコードです:

上記のほとんどは、未完成のオプション処理です。対象のコード セグメントは、case : "@" の下の switch ステートメントにあります。while ループは、argv で見つかった文字列を連結して debugString を作成し、文字列が "-" で始まるか、argv の最後に達したときに停止することになっています。また、「strcat(debugString, " ");」で文字列の間にスペースを追加しています。問題を引き起こしているのはスペースを追加することです。

この方法でスペースを追加せずにすべての文字列を連結すると:

私は以下を取得します:

これが私が期待した方法です。ただし、スペースを追加するコードを実行すると:

次に、出力として次を取得します。

「what」と「going」の間の 2 つのスペースに注意してください。何らかの理由で単語が削除されているにもかかわらず、私のプログラムはまだスペースを正しく追加しています。私は多くの異なる入力でこれを試しましたが、削除されるのは常に入力の 2 番目の文字列です。誰が何が起こっているのか知っていますか?

PS gcc -g -O0 -Wall -Wextra -std=gnu99 -lm でコンパイル

私が作成したインクルード ファイルはこのコードでは使用されていないため、問題は私のインクルードにはありません。