在進行C程式設計時,提到一些合法和非法的宣告和初始化?
在討論合法和非法的宣告和初始化之前,我們先來看看如何宣告和初始化C 中的變數。
以下是變數宣告的語法 -
Datatype v1,v2,… vn;
其中 v1、v2、...vn 是變數的名稱。
例如,int sum;
float a,b;
變數可以透過兩種方式宣告-
局部宣告
全域宣告
「局部宣告」是在主區塊內宣告一個變數,且其值在該區塊內可用。
「全域宣告」是在主區塊內宣告一個變數在主區塊之外,其值在整個程式中都可用。
例如,
int a, b; /* global declaration*/ main ( ){ int c; /* local declaration*/ - - - }
以下是變數初始化的語法-
Datatype v1=number;
例如,
int sum=0; float a=1,b=4.5;
使用資料類型來宣告變數,我們可以在宣告時初始化值。因此,在初始化和宣告值時,我們需要遵循規則
讓我們看看 C 中合法和非法宣告和初始化的一些範例。
Char a=65;
這是一個合法的語句,因為我們可以用常數初始化變數。
Static int p=20, q=p*p
#這是一條非法語句,因為靜態變數必須用常數初始化,但這裡q 沒有初始化
Double x=30 *PI
這是一個合法的語句,因為這裡我們用常數表達式初始化了一個變數。
雙路徑[]={1,PI/2, PI, 2*PI/2}
這是一個合法的語句,這裡我們初始化陣列元素為常量。
帶有合法宣告與初始化−
現場示範 p>
#include<stdio.h> void main ( ){ int a,b; a= 10, b = 20; printf (" %d", a<b); printf (" %d", a<=b); printf (" %d", a>b); printf (" %d", a>=b); printf (" %d", a = =b); printf (" %d", a ! =b); }
1 1 0 0 0 1
非法宣告與初始化-
#include <stdio.h> int main(){ static int p=20, q=p*p;//illegal initialization printf("%d%d",p,q); return 0; }
error will be occurred error: initializer element is not constant static int p=20, q=p*p;
以上是在C語言中,合法和非法的聲明和初始化的詳細內容。更多資訊請關注PHP中文網其他相關文章!