C で短いリテラルをどのように表現しますか?

Susan Sarandon
リリース: 2024-10-31 16:51:30
オリジナル
124 人が閲覧しました

How do you represent a short literal in C  ?

C での Short データ型のリテラル表現

C では、 int、unsigned int、unsigned int など、さまざまなデータ型に対してさまざまなリテラル表現が存在します。 long、float、double、char。ただし、短いデータ型のリテラル表現に関するクエリがあるようです。

この問題は、明示的な短いリテラル構文が欠如しているために生じます。他のデータ型と同様に、「2S」などの試行ではコンパイラ警告が生成されます。応答によって提供される解決策は、キャストを使用することです。

短いリテラルを表すには、構文 (short)2 を使用できます。厳密には短いリテラルではありませんが、このキャストは同じ動作を実現します。コンパイラーはコンテキストを推論してコードを効率的に最適化し、不必要な int の割り当てとキャストを回避します。

わかりやすくするために、次のコード スニペットのアセンブリ出力を調べてみましょう。

<code class="cpp">a = 2L;
b = 2.0;
c = (short)2;
d = '';</code>
ログイン後にコピー

逆アセンブラーの出力リテラル (2L、2.0、(short)2、'2') で割り当てられたすべての変数が、movl 命令を使用して値 2 で初期化されることがわかります。この動作は、コンパイラがキャストを効果的に処理し、コードに関係なくコードを最適化していることを示しています。リテラル表現

以上がC で短いリテラルをどのように表現しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!