問題タブ [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.
lisp - Lispで数値を文字列に変換する
数値と文字列を変換する Lisp 関数を見つけようとしましたが、少しグーグルで検索した後、同じ名前の関数が気に入りました。SLIMEに入ったとき(itoa 1)
の印刷:
どうすれば変換できますか?
c - 1 桁の整数に対して itoa 関数が機能しない
10 以上の整数に対して機能するカスタム itoa 関数がありますが、渡された整数が 1 桁の場合、何らかの理由で何も返されません。それがなぜなのか理解できないようです。
array[0]
andにアクセスするだけで配列を反転させた後に配列を出力するとarray[1]
、null とその 1 桁が正常に出力されることがわかりますが、1 桁の後に奇妙な末尾文字があります。これは 1 桁の場合にのみ発生します。たとえば(blank)7e
、または(blank)4r
関数:
関数は次のコンテキストで呼び出されます。
c - 数値を 10 で割り、後で文字列に変換する方法を教えてください
整数を 10 で除算しようとしていますが、25 の解を得ています (25.5 になるはずです)。後で、これを整数からASCII関数への文字列に変換しています。その数を10で割るのに問題があります。
c - strrev - C で文字列を反転する
関数 strrev() を使用して文字列を逆にしようとしています。strrev は反転された文字列へのポインタを返すことがわかっているので、すでに割り当てられている文字列を元の文字列と同じサイズで初期化するだけで、strrev 関数が戻ります。明らかに、これは正しい方法ではなく、その行に「互換性のない型」というエラーが表示されます。
コードは次のとおりです。
c - サイズとして数字を使用して整数の char 配列を作成します
Cでchar配列を作成してintの数字で埋めようとしていますが、intは任意の数字にすることができます。
getDigits(int num)
int の桁数を返す という作成された関数を使用しています。
しかし、gcc を使用してコンパイルすると、次のように返されます。
error: variable-sized object may not be initialized
私はすべてを試しました。として宣言するとchar fileSizeStr[5] = "";
、機能します。バッファサイズを動的に宣言しようとすると問題が発生していることがわかりますが、これを達成する方法があるかどうかを知りたいです。
c++ - バイナリ データを読み取り、それを int に変換してから C++ に変換するにはどうすればよいですか?
wav ファイルを開いて読み取り、バッファを整数配列に変換してから、変換して書き込もうとしています。
現在、これは以下を出力します。
変換中にデータが変更されたことを示します。これを正しく機能させるにはどうすればよいですか?
いくつかの提案と、char
変数に対して計算を実行できることを学んだ後、コードを再構成しました。現在は次のようになっています。
ただし、(Windows Media Player で) 再生しても再生されないため、元のファイルではないことは明らかです。
c - ADC から uint16 を変換すると反転する
やりたいこと: 結果の 16 ビットの数値 (2 つの 8 ビット # を結合した後) を、シリアル送信関数で使用する文字列に変換します。
問題: itoa を使用すると、中間点 (15 番目のビットから 16 番目のビットまで) を通過すると結果が負になるため、基本的に 16 番目のビットを符号ビットとして使用します (当然のことです)。 . sprintf もこれを行います。itoa(16) は正常に動作することに注意してください。
ハードウェア: atmega16 マイクロ プロセッサ (AVR c) SPI バス経由で接続された 16 ビット外部 ADC (ADC 結果を 2 つの 8 ビット数値として送信)
コード:
この結果、元の uint16 の代わりに 15 ビットの署名が出力されます。私は itoa を使用して 10 ビットの内部 ADC の結果を出力してきましたが、この単純な処理に非常に長い時間がかかっているのが残念です。
お時間をいただき、誠にありがとうございます。
string - イトアの問題点
マイクロコントローラーからPCにデータを送信しようとしています。データは、異なるポートからの 10 ビット ADC 変換 (0 ~ 1023 の数値など) です。この数値を整数として保存したので、itoa または同様の関数を使用して、これを ASCII 文字列に変換したいと思います。私の問題は、itoa 関数のドキュメントを見つけるのに苦労していることです。たとえば、AD変換から「1011」という数字を受け取った場合。次に、次のように itoa を呼び出すことができます
ADC_string の結果は、「1 0 1 1 '\0'」、たとえば 1011 になります。しかし、代わりに AD 変換から数値 5 を受け取ったとします。結果は代わりに "5 '\0' Null Null Null" になります (itoa がどのように正しく動作するかを理解していれば)。代わりに、結果が「0 0 0 5 '\0'」であってほしかったでしょう。この理由は、結果を別の場所にある大きな文字列に配置したいからです。例えば
および別のポートの場合 (インデックス 5 & 6 の large_string には他のものが存在します)
つまり、上記の例に従って、次のように large_string を使用したいと思います。
(一度に 1 つのポートで AD 変換を行います。これが、ADC_string を再利用できる理由です)。large_string は後で PC に送信されるため、意図しない文字列ターミネータを避けたいと考えています。
これをうまく実装する方法を知っている人はいますか? 提案に感謝します!
c - Cでitoaを使用する方法
itoa
Cで関数を使用する方法を誰か教えてもらえますか?
プロトタイプは次のとおりです。
int_Val
それが変換したい値だと
思います。char*_DstBuf
結果を保存したい文字列ですが、何int_Radix
ですか?
c++ - 複数桁の int と char を追加する方法。出力は int + char になります
これは私がこれまでに持っているものです
ヘッダー ファイルの読み取り:
呼び出しプログラム:
出力は次のとおりです。
ただし、1桁の整数でのみ機能します
したがって、1000 + X を追加しようとしても、1 + X が返されますが、その理由はわかりません。
誰かが私を正しい方向に向けることができますか? どんな助けでも大歓迎です、ありがとう。
VS 2010 の使用