Windowsのコマンドプロンプトの仕様を見てたら,「命令行に入力できるのは最大8192文字まで」って書いてあって,
learn.microsoft.com/ja-jp/trou
「Microsoftめ文字とバイトを混用しやがって」と思ってたんだけど,試しに

PS> cmd.exe '/c' 'echo' ('あ' * 8153)

とかやったら命令が通ってビックリした。
ほんとに「文字」単位で数えてるのか……。SNSとかならともかく命令行の入力上限をバイトじゃなくて文字にする意味が分からない……。

ちなみに

PS> cmd.exe '/c' 'echo' ('あ' * 8154)

だと「コマンド ラインが長すぎます。」と言われて,

PS> cmd.exe '/c' 'echo' ('a' * 8154)

でも同じように拒否られるから,ほんとに「文字」単位で見てる。信じられない……。

フォロー

@cmplstofB UTF-16において、サロゲートペアを利用して符号化する文字を含んだ場合にどうなるか気になるところ

ログインして会話に参加
:realtek:

思考の /dev/null