在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ C++/ D語(yǔ)言變量
類的訪問(wèn)修飾符
D語(yǔ)言運(yùn)算符
D語(yǔ)言邏輯運(yùn)算符
類指針
D語(yǔ)言元組
D語(yǔ)言指針
D語(yǔ)言模塊
D語(yǔ)言sizeof運(yùn)算符
D語(yǔ)言混合類型
D語(yǔ)言封裝
D語(yǔ)言條件編譯
類的靜態(tài)成員
D語(yǔ)言do...while循環(huán)
D語(yǔ)言結(jié)構(gòu)體
重載
D語(yǔ)言字符串-String
D語(yǔ)言決策語(yǔ)句
D語(yǔ)言接口
D語(yǔ)言for循環(huán)
D語(yǔ)言switch語(yǔ)句
D語(yǔ)言關(guān)聯(lián)數(shù)組
D語(yǔ)言范圍
D語(yǔ)言枚舉Enums
契約式編程
D語(yǔ)言并發(fā)
D語(yǔ)言開(kāi)發(fā)環(huán)境設(shè)置
D語(yǔ)言別名
D語(yǔ)言常值
D語(yǔ)言常量
D語(yǔ)言函數(shù)
D語(yǔ)言if嵌套語(yǔ)句
D語(yǔ)言循環(huán)
D語(yǔ)言概述,D語(yǔ)言是什么?
D語(yǔ)言運(yùn)算符優(yōu)先級(jí)
D語(yǔ)言continue語(yǔ)句
D語(yǔ)言異常處理
D語(yǔ)言break語(yǔ)句
D語(yǔ)言if...else語(yǔ)句
D語(yǔ)言類和對(duì)象
類繼承
D語(yǔ)言字符
D語(yǔ)言教程
D語(yǔ)言關(guān)系運(yùn)算符
比較操作符重載
構(gòu)造函數(shù)和析構(gòu)函數(shù)
D語(yǔ)言抽象類
D語(yǔ)言if語(yǔ)句
D語(yǔ)言賦值運(yùn)算符
D中算術(shù)運(yùn)算符
D語(yǔ)言類成員函數(shù)
D語(yǔ)言位運(yùn)算符
D語(yǔ)言變量
D語(yǔ)言數(shù)據(jù)類型
D語(yǔ)言文件I/O
D語(yǔ)言數(shù)組
一元運(yùn)算符重載
D語(yǔ)言嵌套switch語(yǔ)句
D語(yǔ)言基本語(yǔ)法
二元運(yùn)算符重載
this指針
D語(yǔ)言聯(lián)合體
D語(yǔ)言模板
D語(yǔ)言嵌套循環(huán)
D語(yǔ)言while循環(huán)

D語(yǔ)言變量

變量是什么,但考慮到一個(gè)存儲(chǔ)區(qū)域,我們的程序可以操縱的名稱。在D語(yǔ)言中的各變量具有特定的類型,它決定了變量的存儲(chǔ)器的大小和布局;能該存儲(chǔ)器內(nèi)存儲(chǔ)的值的范圍;和設(shè)置操作,可以被應(yīng)用到變量中。

變量的名稱可以由字母,數(shù)字和下劃線字符。它必須以字母或下劃線。大寫和小寫字母是不同的,因?yàn)镈語(yǔ)言是區(qū)分大小寫的。根據(jù)這個(gè)基本類型在前面的章節(jié)中解釋的那樣,會(huì)有以下幾個(gè)基本變量類型:

Type 描述
char 通常一個(gè)八位字節(jié)(1字節(jié))。這是一個(gè)整數(shù)類型。
int 最自然的機(jī)器的整數(shù)大小。
float 單精度浮點(diǎn)值。
double 雙精度浮點(diǎn)值。
void 表示不存在類型。

D編程語(yǔ)言還允許定義各種其他類型的變量,我們將覆蓋像枚舉,指針,數(shù)組,結(jié)構(gòu),聯(lián)合,等后面的章節(jié)對(duì)于本章中,我們只學(xué)習(xí)基本的變量類型。

在D語(yǔ)言中變量定義:

變量的定義是指,告訴編譯器在哪里和多少來(lái)創(chuàng)建存儲(chǔ)的變量。變量定義指定了數(shù)據(jù)類型,并且包含的該類型的一個(gè)或多個(gè)變量如下的列表:

type variable_list;

在這里,類型必須是包括char, wchar, int, float, double, bool或任何用戶定義的對(duì)象等有效D語(yǔ)言的數(shù)據(jù)類型,并且variable_list可能包含由逗號(hào)分隔的一個(gè)或多個(gè)標(biāo)識(shí)符名稱。一些有效的聲明如下所示:

int    i, j, k;
char   c, ch;
float  f, salary;
double d;

該行int i, j, k; 既聲明并定義了變量i,j和K;這指示編譯器創(chuàng)建一個(gè) int類型的 i, j 和 k變量。 

變量可以被初始化在他們的聲明中(分配一個(gè)初始值)。在初始化由一個(gè)等號(hào)后面的常量表達(dá)式如下:

type variable_name = value;

一些實(shí)例是:

extern int d = 3, f = 5;    // declaration of d and f. 
int d = 3, f = 5;           // definition and initializing d and f. 
byte z = 22;                // definition and initializes z. 
char x = 'x';               // the variable x has the value 'x'.

對(duì)于沒(méi)有初始化的定義:具有靜態(tài)存儲(chǔ)變量與隱式初始化為NULL(所有字節(jié)的值為0);所有其他變量的初始值是不確定的。

在D中的變量聲明:

變量聲明所提供的保證編譯器,一個(gè)變量與給定的類型和名稱的現(xiàn)有從而使編譯器進(jìn)行進(jìn)一步的編輯,而不需要對(duì)變量了解完整細(xì)節(jié)。變量聲明有其意義在編譯的時(shí)候,編譯器只需要實(shí)際的變量聲明在程序鏈接的時(shí)候。

示例

試試下面的例子,其中的變量都在頂部被聲明,但他們已經(jīng)定義并初始化主函數(shù)中:

import std.stdio;

int a = 10, b =10;
int c;
float f;

int main ()
{
 writeln("Value of a is : ", a);
  /* variable re definition: */
  int a, b;
  int c;
  float f;

  /* Initialization */
  a = 30;
  b = 40;
  writeln("Value of a is : ", a);
  c = a + b;
 writeln("Value of c is : ", c);

  f = 70.0/3.0;
 writeln("Value of f is : ", f);
  return 0;
}

讓我們編譯和運(yùn)行上面的程序,這將產(chǎn)生以下結(jié)果:

Value of a is : 10
Value of a is : 30
Value of c is : 70
Value of f is : 23.3333

在D語(yǔ)言中左值和右值:

D中有兩種類型的表達(dá)式:

  1. lvalue : 這是一個(gè)左值的表達(dá)式可能會(huì)出現(xiàn)無(wú)論是左值或右值。

  2. rvalue : 這是一個(gè)右值表達(dá)式可以出現(xiàn)在賦值的右值而不是左值。

變量是左值,因此可能會(huì)出現(xiàn)在賦值的左值。數(shù)值常量是右值,所以不得轉(zhuǎn)讓,不能出現(xiàn)在左值。下面是一個(gè)有效的語(yǔ)句:

int g = 20;

但以下情況不屬有效的語(yǔ)句,并會(huì)產(chǎn)生編譯時(shí)錯(cuò)誤:

10 = 20;