C 變量

2018-05-20 11:20 更新

學(xué)習(xí)C - C變量

變量是保存一個或多個連續(xù)字節(jié)的特定內(nèi)存塊。

程序中的每個變量都有一個名稱,它將對應(yīng)于該變量的內(nèi)存地址

我們使用變量名稱將數(shù)據(jù)值存儲在內(nèi)存中或檢索內(nèi)存中包含的數(shù)據(jù)。

以下代碼硬編碼字符串中的值10。它不使用變量。


#include <stdio.h> 
  
int main(void) 
{ 
      printf("My salary is $10."); 
      return 0; 
} 

上面的代碼生成以下結(jié)果。


命名變量

變量名稱是以一個字母開頭的一個或多個大寫或小寫字母,數(shù)字和下劃線字符(_)的序列。

合法變量名稱的示例如下:

半徑直徑Current_May my_Result D123

變量名不能以數(shù)字開頭,因此8_value和6_size不是合法名稱。

變量名不能包含字母,下劃線和數(shù)字以外的字符。

聲明變量

要聲明一個名為myvar1的變量,請寫下列內(nèi)容:

int myvar1;

int 是數(shù)據(jù)類型。

以下是可以在C語言中使用的常見數(shù)據(jù)類型的列表。

int 
long 
float 
char 
double 

我們也可以寫下如下許多變量:

int myvar1, myvar2;

一旦聲明,這些變量可以用于根據(jù)數(shù)據(jù)類型存儲數(shù)據(jù)。

賦值變量

您聲明的變量可以由值賦值。

它可以使用等號(=)。

例如,變量myvar1將賦值數(shù)字100,你會寫這個:

int myvar1 = 100;

您還聲明如下

int myvar1; 
myvar1 = 100; 

您必須根據(jù)數(shù)據(jù)類型正確地為變量賦值。

如果沒有,編譯過程中會出錯。


示例:使用變量

您可以重寫以前的程序以使用int類型的變量,它是一個整數(shù)類型:


    #include <stdio.h> 
      
    int main(void) { 
      int salary;                               // Declare a variable called salary 
      salary = 10000;                           // Store 10000 in salary 
      printf("My salary is %d.\n", salary); 
      return 0; 
    } 

上面的代碼生成以下結(jié)果。

注意

識別您用于存儲工資的內(nèi)存的語句如下:

int salary;  // Declare a variable called salary 

該語句稱為變量聲明,因為它聲明變量的名稱。

在這種情況下,名稱是salary。

變量聲明以分號結(jié)尾。

變量聲明還指定變量將存儲的數(shù)據(jù)類型。

你使用關(guān)鍵字int來指定變量 salary 將用于存儲int類型的整數(shù)值。

關(guān)鍵字 int 在變量的名稱之前。

這只是您可以用來存儲整數(shù)的幾種不同類型之一。

關(guān)鍵字是在C中保留的具有特殊含義的詞。

您不能在代碼中使用關(guān)鍵字作為變量或其他實體的名稱。

如果這樣做,您的編譯器將產(chǎn)生錯誤消息。

下一個聲明是:

salary = 10000;                           // Store 10000 in salary 

這是一個簡單的算術(shù)賦值語句。

它將值設(shè)置在等號的右側(cè),并將其存儲在等號左側(cè)的變量中。

= 符號稱為賦值運算符,因為它將右側(cè)的值分配給左側(cè)的變量。

關(guān)于printf()的注意事項

printf()聲明:

printf("My salary is %d.\n", salary); 

括號內(nèi)有兩個參數(shù),用逗號分隔。

參數(shù)是傳遞給函數(shù)的值。

printf()函數(shù)的兩個參數(shù)是:

第一個參數(shù)是一個控制字符串,它控制如何顯示由以下參數(shù)或參數(shù)指定的輸出。

它也稱為格式字符串。

第二個參數(shù)是變量名稱salary。

第一個參數(shù)中的控制字符串確定如何顯示salary的值。

%d 稱為變量值的轉(zhuǎn)換說明符。

轉(zhuǎn)換說明符確定變量值在屏幕上的顯示方式。

d 是適用于整數(shù)值的十進制說明符。

這意味著第二個參數(shù)(salary)將被表示并輸出為十進制(基數(shù)10)。

轉(zhuǎn)換說明符始終以%字符開頭,以便printf()函數(shù)可以識別它們。

因為控制字符串中的%總是指示轉(zhuǎn)換說明符的開始,所以當(dāng)您要輸出一個%字符時,您必須使用轉(zhuǎn)義序列%%。

以下代碼顯示如何使用兩個Conversion說明符。

    #include <stdio.h> 
    int main(void) 
    { 
      int chair;                              
      int table;                                
      
      chair = 2;                              
      table = 3;                                
      
      // Display some output 
      printf("%d table for %d chair\n", table, chair); 
      return 0; 
    } 

您首先使用以下語句聲明兩個變量table 和 chair:

int chair;                                // Declare a variable called chair 
int table;                                // and a variable called table 

您可以將兩個變量指定為 int 類型,因此它們只能存儲整數(shù)值。

它們已經(jīng)在單獨的聲明中被聲明。

因為它們都是同一類型的,所以你可以保存一行代碼,并將它們一起聲明為:

int chair, table; 

接下來的兩個語句將值賦值給每個變量:

chair = 2;                          
table = 3;                          

上面的代碼生成以下結(jié)果。

示例:使用變量

該程序使用變量的值進行簡單的計算:


    #include <stdio.h> 

    int main(void) 
    { 
      int total_count; 
      int birds; 
      int tigers; 
      int pigs; 
      int others; 
      
      birds = 26; 
      tigers = 13; 
      pigs = 541; 
      others = 46; 
      
      // Calculate the total number
      total_count = birds + tigers + pigs + others; 
      
      printf("We have %d in total\n", total_count);   // Output the result 
      return 0; 
    } 

上面的代碼生成以下結(jié)果。

初始化變量

在上一個示例中,您使用以下語句聲明每個變量:

int birds;                         // The number of birds as pets 

您使用此語句設(shè)置變量birds的值:

birds = 2; 

這將birds的值設(shè)置為2。

第一個語句創(chuàng)建名為bird的變量,但是它的值將是使用該內(nèi)存的最后一個程序留下的內(nèi)存。

我們可以在聲明時初始化變量。

您可以使用以下語句來執(zhí)行此操作:

int birds = 2; 

此語句將bird聲明為int類型,并將其初始值設(shè)置為2。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號