ホームページ > バックエンド開発 > C++ > C言語でレジスタストレージクラスとは何ですか?

C言語でレジスタストレージクラスとは何ですか?

WBOY
リリース: 2023-08-30 09:45:15
転載
1448 人が閲覧しました

C言語でレジスタストレージクラスとは何ですか?

C プログラミング言語には、次の 4 つのストレージ クラスがあります。

  • auto
  • extern
  • static
  • register

変数の登録

  • キーワードは register です。

  • 通常の変数がメモリに格納されるのと同様に、レジスタ変数の値はメモリではなく CPU のレジスタに格納されます。

  • #レジスタは、CPU 内の一時記憶ユニットです。

  • これにより、レジスタ変数のアクセス時間が通常の変数よりも高速になります。

例 1

次は、C プログラムの

register storage class です:

Demonstration

#include<stdio.h>
main ( ){
   register int i;
   for (i=1; i<=5; i++)
      printf ("%d ",i);
}
ログイン後にコピー

出力

出力は以下のとおりです -

1 2 3 4 5
ログイン後にコピー

例 2

レジスタ ストレージ クラスを使用する別の C プログラムを検討します -

オンライン デモンストレーション

#include<stdio.h>
int main(){
   register int a;
   printf("%d",a); //prints default value of a =0
}
ログイン後にコピー

出力

出力は以下のとおりです -

0
ログイン後にコピー

例 3

以下は静的ストレージ クラスの 3 番目の C プログラムです -

#include<stdio.h>
int main(){
   register int i = 10;
   int *p;
   //int *p = &i; //error occurred ,here we are trying to request address of register    variable
   printf("Value of i: %d", *p);
   printf("Address of i: %u", p);
}
ログイン後にコピー
出力

出力は以下のとおりです -

Error:add of reg var?
ログイン後にコピー

以上がC言語でレジスタストレージクラスとは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート