Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
「dc」コマンドを使用して、16 進数から 10 進数に変換しています
dc -e "16i$1p"
問題は、大きな数値で出力が壊れることです
795717178255658627448611597034913344160729841275756347904742363029055\ 1952200534008528895
この動作を防ぐにはどうすればよいですか? これを無効にするために渡すオプションまたは引数はありますか?
dc質問は古くて冷たいですが、GNUとの両方の新しいバージョンではbc、環境変数を介してこの機能を無効にできることに注意するのが適切だと思います
dc
bc
n=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF n+=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF DC_LINE_LENGTH=0 dc -e "16i${n}p" BC_LINE_LENGTH=0 bc <<<"ibase=16; $n"