亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Go語言中const常量的用法

發布時間:2021-08-24 21:56:16 來源:億速云 閱讀:295 作者:chen 欄目:大數據

本篇內容介紹了“Go語言中const常量的用法”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一、Go語言中const常量

Go語言的常量關鍵字是const,用于存儲不會改變的數值,定義的格式為:

const valueName type = value或者const valueName = value

  const a = "abc"  const b string = "Hello"

Go里面常量,具有常量的基本特質,不能修改。原因是:常量的數值在編譯階段就已經確定了,運行時不能夠修改。例子如下:

package main

import (  "fmt")

func main() {  const a = "abc"  const b string = "Hello"  a = "Word"  fmt.Println("Hello, playground:",a,b)}output:./prog.go:10:4: cannot assign to a

另外,Go語言的常量在試圖打印地址的時候,也會編譯出錯,原因是Go語言中并沒有*const這種數據類型。

package main

import (  "fmt")

func main() {  const a = "abc"  const b string = "Hello"    fmt.Println("Hello, playground:",&a,b)}output:./prog.go:11:35: cannot take the address of a

Go 語言中的常量定義會有一些默認的規則,主要有:

1.定義常量時必須有值。

2.常量組中如果不對常量賦值的話,常量的值與上面一個是一致的。

3.常量與iota混用的話,iota會從0開始計數,多一個常量就會增加1。

例子如下:

package main

import (  "fmt")

func main() {  const (    a = 2    b // b=2    c = 5    d // d=5    e // e=5  )  fmt.Println("Hello, playground:", a, b, c, d, e)

 const (    f = 1    g = 1    h = iota // 前面有2個常量所以這里h =2    i // i 在h之后,也會自動+1    j // 同理與j,自動+1    k = 10    l = iota // iota 并不會因為上面的k值變化,而變化依然是6  )  fmt.Println("Hello, playground:", f, g, h, i ,j, k, l)}output: Hello, playground: 2 2 5 5 5Hello, playground: 1 1 2 3 4 10 6

二、C++中const常量

C++中的const常量,表示的是不可以更改數據的值。具有下面幾個特點:

1.具體實現方式是,在編譯階段,編譯器就把const修飾的常量放入符號表中,在運行階段使用該常量的時候,直接從符號表中取出該值即可。

2.const修飾的常量,還是有地址的,并且該地址里面的數值也是可以更改的(備注:這里指的是局部變量里面的const常量)。

3.const修飾的全局變量和static變量存儲在全局的只讀空間中,這時候的地址,在運行階段不可以更改,因為只讀內存被修改的話,會直接crash。

例子如下:

#include <iostream>using namespace std;

int main() {    const int a = 10;    int* p = (int*)(&a);    *p = 20;    cout<<"&a:"<<&a<<" a:"<<a<<endl; // a的值是從符號表里面直接讀出來的,所以還是10。    cout<<" p:"<<p<<"*p:"<<*p<<endl; // *p的值,是修改內存之后的值,源于內存,所以是20。    return 0;}output:&a:0xffcc93d4 a:10 p:0xffcc93d4*p:20

“Go語言中const常量的用法”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

东兴市| 阳江市| 专栏| 辽中县| 通河县| 七台河市| 诏安县| 梅河口市| 城步| 武山县| 巴塘县| 于都县| 连南| 永定县| 鄯善县| 巧家县| 彰武县| 钟山县| 肥西县| 苍山县| 双牌县| 弥渡县| 镇雄县| 左贡县| 柳州市| 内乡县| 中牟县| 海安县| 开鲁县| 尼勒克县| 平乡县| 邯郸市| 石屏县| 益阳市| 山西省| 依安县| 台东市| 曲靖市| 含山县| 淳化县| 金乡县|