質問

私は、文字のバイト数などの下位レベルのことについてはあまり経験がありません。1文字が1バイトに等しいかどうかを調べようとしましたが、成功しませんでした。

サーバーとクライアント間のソケット接続に使用される区切り文字を設定する必要があります。帯域幅を最小限に抑えるために、この区切り文字はできるだけ小さく (バイト単位で) する必要があります。

現在の区切り文字は「#」です。別の区切り文字を取得すると帯域幅が減少しますか?

役に立ちましたか?

解決

それは、文字とバイト (まったく同じものではありません) の間の変換に使用する文字エンコーディングによって異なります。

  • ASCII または ISO 8859 では、各文字は 1 バイトで表されます。
  • UTF-32では、各文字は4バイトで表されます。
  • UTF-8 では、各文字は 1 ~ 4 バイトを使用します。
  • ISO 2022 ではさらに複雑になります

US-ASCII 文字 (# が 1 の文字) は、マルチバイト文字を許可する最も一般的なエンコーディングである UTF-8 では 1 バイトのみを使用します。

他のヒント

これは、エンコーディングに依存します。シングルバイト文字などANSIなどを設定し、様々なISO8859文字で、それは文字あたり1つのバイトで設定します。例えばUTF8などのいくつかのエンコードは文字をエンコードするバイト数は、符号化されたグリフに依存する可変幅である。

当然の答えは、それが依存していることです。あなたは純粋なASCIIのENVである場合は、[はい、すべてのcharは1つのバイトがかかりますが、あなたはユニコードENV(たとえば、Windowsのすべて)にある場合、その文字のサイズは1〜4バイトの範囲であることができる。

あなたはASCII文字セットから文字を選択した場合は、

、[はい、あなたのdelimterはできるだけ小さいます。

あなたが(アクセントと例えば他のシンボルのために)Unicodeまたはワイド文字を使用している場合を除き、

いいえ、すべての文字は、1バイトです。

文字と文字を形成するために、256個の可能な組み合わせを与える長い、1バイトまたは8ビットです。 1つのバイト文字は、ASCII文字と呼ばれています。彼らは唯一のテレタイプとタイプライターはまだ一般的であった時に使用される標準的なアルファベットと様々なシンボルを形成するために(8が利用可能ですが、あなたはこの8番目のビットを使用できない場合でも)7ビットを使用します。

あなたはASCIIチャートを見つけることができるとどのような数字は何文字<のhrefは=「http://www.cdrummond.qc.ca/cegep/informat/Professeurs/Alain/images/ASCII1.GIF」のrel =」に対応しますnoreferrer nofollowを ">ここに。の

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top