首頁 > 後端開發 > C++ > C語言中的不同儲存類

C語言中的不同儲存類

PHPz
發布: 2023-09-15 11:45:06
轉載
1320 人瀏覽過

C語言中的不同儲存類

問題

C語言中有哪些不同的儲存類別?用程式解釋它們。

解決方案

儲存類別被定義為存在於C程式中的變數或函數的作用域和生命週期。

儲存類別

C語言中的儲存類別如下:

  • auto
  • extern
  • static
  • register

自動變數/局部變數

  • 關鍵字 - auto
  • 也稱為局部變數
  • 作用域 -
    • 局部變數的作用域僅限於宣告它們的區塊內。

    • 這些變數在區塊內部宣告。

  • 預設值 - 垃圾值

#範例

 示範

#include<stdio.h>
void main (){
   auto int i=1;{
      auto int i=2;{
         auto int i=3;
         printf ("%d",i);
      }
      printf("%d", i);
   }
   printf("%d", i);
}
登入後複製

輸出

3 2 1
登入後複製

全域變數/外部變數

  • 關鍵字 - extern
  • 這些變數在區塊外宣告因此它們也稱為全域變數

  • 作用域 - 全域變數的作用域在整個程式中可用。

  • 預設值 - 零

範例

 即時示範

#include<stdio.h>
extern int i =1; /* this &lsquo;i&rsquo; is available throughout program */
main (){
   int i = 3; /* this &lsquo;i&#39; available only in main */
   printf ("%d", i);
   fun ();
}
fun (){
   printf ("%d", i);
}
登入後複製

輸出

31
登入後複製

靜​​態變數

  • 關鍵字 - static
  • 範圍 - 靜態的範圍變數的優點是它在整個程式中以及在函數呼叫之間保留其值。
  • 靜態變數只初始化一次。
  • 預設值 - 零
  • li>

#範例

 現場示範

#include<stdio.h>
main (){
   inc ();
   inc ();
   inc ();
}
inc (){
   static int i =1;
   printf ("%d", i);
   i++;
}
登入後複製

輸出

#
1    2    3
登入後複製

註冊變數

  • 關鍵字 − register
  • 暫存器變數的值儲存在CPU暫存器中,而不是儲存在記憶體中,正常變數儲存在記憶體中。

  • 暫存器是CPU中的暫存單元。

範例

 示範

#include<stdio.h>
main (){
   register int i;
   for (i=1; i< =5; i++)
      printf ("%d",i);
}
登入後複製

#輸出

1 2 3 4 5
登入後複製
#

以上是C語言中的不同儲存類的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:tutorialspoint.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板