問題タブ [itoa]
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.
c - Cエラー:「_itoa」への未定義の参照
次の行を使用して、整数を文字に変換してファイルに書き込もうとしています。
そして私はこの警告とメッセージを受け取ります:
警告:「itoa」の暗黙の宣言
'_itoa'への未定義の参照
私はすでにstdlib.hを含めており、コンパイルしています:
どんな助けでもありがたいです、ありがとう。
c++ - 整数を文字列に変換するC++
整数をchar配列に変換しようとしていますが、このコードに出くわしました
しかし、その値を印刷しようとすると、s
まだ5が印刷されます。それがそれを行うことになっているのか、それとも何か間違ったことをしているのかわかりません。さらに、同じintをchar配列に変換できればと思います。しかし、私はその問題でどんな助けもいただければ幸いです。ありがとう!取得したコード:整数を文字列C ++に変換するためのitoa()の代替?
c++ - ダミーの char* としての整数
質問は以前から尋ねられていましたが、最善の方法についてはまだ少し迷っています。整数があり、構造体のメンバーとして使用する char* を取得したいと考えています。
同様の質問は、たとえば hereまたはhereです。stringstream や lexical_cast は使いたくありません。私が見る限り、基本的にはitoa、sprintf、snprintfを残しています。
私の問題の一部は、char ポインターがどのように機能するのかよくわからないことだと思います。
- をリクエストする
char str[12]
と、12 文字が予約されますか? - メモリが割り当てられたと思いますか?
- では、ヌル終了はどのように機能するのでしょうか?
- それは 12 文字の最後ですか (スペースが埋め込まれていますか?)、または数字が 2 文字しか使用されていない場合、2 文字の後に発生しますか?
- バッファサイズは重要ですか、それとも最大値(32ビットの場合は30程度)を使用する必要がありますか?
- また、単純な構造体で後でポインターを使用すると、メモリは自動的にクリアされますか、それともデストラクタが必要ですか?
- デストラクタは初期化バッファ サイズを知る必要がありますか?
- 実際の数値からバッファ長を計算しようとする人がいないのはなぜですか?
- snprintf は itoa よりも推奨されますか?
ありがとう
c++ - 36 の基数/基数で ulltoa() をシミュレートします。
符号なし 64 ビット整数を文字列に変換する必要があります。これは Base 36、つまり文字 0 ~ Z です。ulltoa は Linux のマンページには存在しません。しかし、sprintfはそうです。sprintf を使用して目的の結果を得るにはどうすればよいですか? つまり、% の書式設定は何ですか?
または、snprintf が機能しない場合、どうすればよいですか?
c++ - テンプレート関数の itoa
コードが最初に来ます:
しかし、次のようなコンパイルエラーが発生しました:
しかし、私は確かに含め<cstdlib>
ました。何が悪いのか誰が教えてくれますか?
c++ - itoa は C++ で無限ループを作成します
これは非常に奇妙です。itoa();
無限ループを作っているようです。
なぜそれをするのですか?i
変数なしの数値 (つまり)以外の変数を使用してみましたがitoa(1, buffer, 10);
、それでも無限ループに陥り続けます。私はあまり成功せずにグーグルを試みました.私はそれについての古いメールを見つけましたここ. Windows XP 32 ビットと Code::Blocks (GCC を使用) をコンパイラとして使用しています。
誰が何が悪いのか知っていますか?前もって感謝します。
c - 標準 C で int を char* に変換します (itoa なし)
以下に示すように、2 つの変数を宣言して初期化しました。
標準 C で int を char* に変換したいのですが、C++ の itoa などの変換関数を使用できません。
Ubuntu 11.10 を使用しています
c++ - itoa()を使用するためのベストプラクティスは何ですか
itoa()を使用する場合、char * _DstBuffが必要ですが、ここでのベストプラクティスは何ですか?
出力は次のとおりです。100100100
char *b = new char;
では、誰かがこことの違いを説明できchar *c = new char[10];
ますか?
私char *c
は動的に10文字を割り当てることを知っていますが、それはchar *b
動的に1文字しか割り当てないことを意味します。これが正しければ、出力がすべて正しいのはなぜですか。
実際、a、b、またはcのベストプラクティスはどれですか?
c++ - C / C ++でitoaを使用して整数をバイナリ文字列に変換する
itoa()
long long int をバイナリ文字列に変換するために使用できますか?
を使用して int をバイナリに変換するさまざまな例を見てきましitoa
た。long long int を使用すると、オーバーフローや精度の低下のリスクはありますか?
編集
返信ありがとうございます。私は自分がやろうとしていたことを達成しました。itoa()
long long int をサポートしていないため、あまり役に立ちませんでした。さらにitoa()
、標準ライブラリ関数ではないため、gcc では使用できません。
c - atoiは標準機能です。しかし、itoaはそうではありません。なんで?
なぜこの区別?私はひどい問題にぶつかりました。その中にいると仮定itoa
してstdlib.h
、最終的にのカスタムバージョンを別のプロトタイプにリンクして、itoa
いくつかのクレイジーなエラーを生成することになりました。
では、なぜitoa
標準機能ではないのですか?どうしたの?そして、なぜ標準はその双子の兄弟に対して部分的atoi
ですか?