こんにちは私はの値を格納するtclにstring
という変数を持っています。私は基本的に以下の私は、タスクを達成するために書いたコードがあるstring
変数から左端の桁を取得し、1で、それをインクリメントする必要があります:maxID
がある場合TCLの文字列形式の整数値を増やす
set maxID 123456;
if {$maxID < 1000000} {
set maxID 1000000;
} elseif {$maxID >= 1000000} {
set maxID [expr [string index $maxID 0] + 1]000000; #Need to Simplify this
}
return $maxID;
は今、私は何をしようとしていることです100万以上の場合は、maxID
を次の100万の値に設定します。したがって、上記の例ではmaxID
が123456
なので、返信maxID
の値は1000000
となります。123456
の次の100万の値は1000000
です。
これを行うには、1の左端の数字を取得してから1ずつ増やし、値を増やす6つのゼロを連結します。私はtcl 8.5.xを使用していますので、まだ[string cat $args $args...]
コマンドが利用できません。
とにかく、同じことを行う簡単な方法があるのだろうと思っていました。
投稿したコードによると、 'maxID'の結果値は' 2000000'ではなく '1123456'になります。 – mkrieger1
ありがとうございました、maxid値が100万未満でした。 – Naphstor
だから、基本的に 'maxID'を100万の最も近い倍数に切り上げたいのですか? – mkrieger1