[過去ログ] 【初心者歓迎】C/C++室 Ver.106【環境依存OK】 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
322(2): はちみつ餃子 ◆8X2XSCHEME 2020/10/30(金)09:22 ID:WoJDazC2(1/4) AAS
>>320
int から uint16_t の変換について
変換後の型で表せない範囲の値を変換しようとしたとき、変換後の型が符号なし整数型である場合には、
変換後の型が格納可能な最大値 + 1 で modulo を取った値になることになってる。
(変換後の型が符号付である場合には未定義。)
結果の大きさが確実に uint16_t の範囲に入るという確信がある状況であればもちろん問題ないし、
そうでないときも結果が未定義ではないという意味では問題ないが、
プログラムの意図に合致するかどうかは状況による。
----
文字列を数値に変換することについて、
省2
323: 2020/10/30(金)09:49 ID:7Hoin+z3(1) AAS
>>322
外部リンク:timsong-cpp.github.io
> If the destination type is signed, the value is unchanged if it can be represented in the destination type; otherwise, the value is implementation-defined.
未定義ではないね。移植性は損なわれるけど。
324(2): 2020/10/30(金)11:26 ID:7MkyV1Cp(1) AAS
>>322
>変換後の型で表せない範囲の値を変換しようとしたとき、変換後の型が符号なし整数型である場合には、
>変換後の型が格納可能な最大値 + 1 で modulo を取った値になることになってる。
>(変換後の型が符号付である場合には未定義。)
結果的にそうなってるだけで実際は上位bit(byte)棄ててるだけじゃないの
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.039s