解決C++全局變量只能初始化不能賦值的問(wèn)題
C++中,全局變量只能聲明、初始化,而不能賦值
也就是說(shuō),下面這樣是不被允許的:
#include <cstdio> using namespace std; int a; a = 2; int main() { return 0; }
錯(cuò)誤提示是:
C++ requires a type specifier for all declarations
聲明、初始化與賦值的區(qū)別:
聲明:int a;
初始化:int a = 2;(在聲明的時(shí)候順帶賦值叫做初始化)
賦值:a = 2;
只有定義(int a;)才分配存儲(chǔ)空間,初始化必須要有存儲(chǔ)空間來(lái)初始化
全局變量在聲明時(shí)候順帶賦值(也就是初始化)是可以的,但是如果先聲明,不賦值,之后再賦值的話(huà),程序是執(zhí)行不到這里的,也無(wú)法通過(guò)編譯。
以上這篇解決C++全局變量只能初始化不能賦值的問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C/C++?string.h庫(kù)中memcpy()和memmove()的使用
memcpy與memmove的目的都是將N個(gè)字節(jié)的源內(nèi)存地址的內(nèi)容拷貝到目標(biāo)內(nèi)存地址中,本文主要介紹了C/C++?string.h庫(kù)中memcpy()和memmove()的使用,感興趣的可以了解一下2023-12-12c++編寫(xiě)String類(lèi)代碼實(shí)例
這篇文章主要介紹了c++編寫(xiě)String類(lèi),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04C++實(shí)現(xiàn)LeetCode(58.求末尾單詞的長(zhǎng)度)
這篇文章主要介紹了C++實(shí)現(xiàn)LeetCode(58.求末尾單詞的長(zhǎng)度),本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07C語(yǔ)言實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)迷宮實(shí)驗(yàn)
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)迷宮實(shí)驗(yàn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-03-03C++ Array容器的顯示和隱式實(shí)例化詳細(xì)介紹
這篇文章主要介紹了C++中Array容器的隱式實(shí)例化和顯式實(shí)例化,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2022-10-10C語(yǔ)言編程數(shù)據(jù)結(jié)構(gòu)帶頭雙向循環(huán)鏈表全面詳解
這篇文章主要為大家介紹了C語(yǔ)言編程的數(shù)據(jù)結(jié)構(gòu)中帶頭雙向循環(huán)鏈表全面詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進(jìn)步,早日升職加薪2021-10-10C語(yǔ)言中數(shù)據(jù)是如何存儲(chǔ)在內(nèi)存中的
使用編程語(yǔ)言進(jìn)行編程時(shí),需要用到各種變量來(lái)存儲(chǔ)各種信息。變量保留的是它所存儲(chǔ)的值的內(nèi)存位置。這意味著,當(dāng)您創(chuàng)建一個(gè)變量時(shí),就會(huì)在內(nèi)存中保留一些空間。您可能需要存儲(chǔ)各種數(shù)據(jù)類(lèi)型的信息,操作系統(tǒng)會(huì)根據(jù)變量的數(shù)據(jù)類(lèi)型,來(lái)分配內(nèi)存和決定在保留內(nèi)存中存儲(chǔ)什么2022-04-04