在c 中可以為int型別賦空值嗎?怎麼賦呢

2022-03-09 17:49:39 字數 2850 閱讀 5499

1樓:

#include

int main(void)

上面這段程式是用g++(一種c++語言的編譯器)編譯通過的,但是編譯器會給出警告:

warning: initialization makes integer from pointer without a cas

我們將n的值輸出,n為0 (注意,0是個整數,與空不等價啊)

有關null的巨集定義在這裡可以簡單認為是: #define null 0

但是要注意了,這樣的巨集定義後的結果如果是賦給一個指標變數可以將指標的指向賦值為空,但是對於整形變數應該是不行的。c++中對於整形變數而言定義的同時將會被賦予一個初始值(嚴謹起見我們認為這個值沒***)。但是不管是怎麼賦值,一個整形變數的值不可能為空,因此可以認為我們無法辦到將一個整型變數賦值為空。

2樓:蛇霏妹兒

首先定義一個整數型別變數,如:int a

然後賦值為0,如:int a=0,就可以了

謝謝注意要在末尾加上分號!!!!!!!!!

3樓:匿名使用者

當然不可以,樓上的別亂說。

null 在其它語言中其實相當於c++中的指標為null,而不是基本型別。基本型別不可能沒有值。

即可以 int *pi = null;

而int i = null; 是錯誤的,因為在這種情況下 null 其實代表 0.

4樓:湯姆貓

是不行的。。。。。

char,string可以

c語言中怎樣給整型和字元型賦空值(null)

5樓:匿名使用者

空值這個概念實際上只是針對指標而言的。整型資料和字元的空值實際上就是一個預設值。整型資料的預設值是0,字元型資料的預設值是『\0』

6樓:匿名使用者

null在32位操抄作系統的記憶體中的襲表現就是0x0000 0000 0000 0000 0000 0000 0000 0000,即32位都為0,其值其實為0

所以,有

int i = 0; //讓i為null

char c = '\0'; //'\0'在記憶體中的表現也為一串0,等價與0和null

7樓:享耳三告

int a=null

char a='null'

,阿克斯碼 上null就代表空值

8樓:匿名使用者

null的值為0

int a=0;

char s=;

c++中如何給一個int型別的變數賦值成一個以零開頭的整數

9樓:幻の上帝

int型別只是整數,和數學中的定義一樣,不管字首有幾個0,值都相等。

在c/c++中,整版數字面量權的字首0表示八進位制。所以int a;a = 0908;肯定編譯錯誤,因為9不是八進位制的合法數字。

按lz的要求,應該只是輸出樣式的問題。即使用int儲存,這種也很簡單,只用c/c++標準庫就可以實現,例如c風格的printf("%06d",a);或者利用c++標準i/o的cout<

====

[原創回答團]

10樓:匿名使用者

是int的話,是不能你那樣賦值的。

為什麼要0開頭的整數?

可以 std::string str("0908");

std::stringstream ost;

ost<>a;

11樓:80晴天

您好,這種定義是不合法的,你可以把a定義為字串,然後對a賦值0908

string a;

a = 0908";

你剛才說的學號問題使其十九字串實現的~

12樓:匿名使用者

以0開頭的整數是八進位制,你給的例子是不合法的,八進位制的數只能是0-7.

13樓:柯墨

據我所知是不可以的,除非你將a轉為string型別 然後再在前面加個『0』賦給另一個string型別的b;

14樓:偷心的賊

a=0908是不行的,不過你可以輸出0908,這樣:

a=908;cout<<'0'<

15樓:匿名使用者

你可以使用c++提供的物件導向的設計能力,自己設計一個類,用於實現你的想法,只要為其提供運算子方面的支援,就能靈活地使用了。

16樓:喜歡黑

0908根本就不是個整數啊,怎麼用int

c++如何將double的值賦值給int

17樓:秋天的朝陽

強制型別轉換可能會丟失精度 例如:

double a = 3.4;

int b = (int)a; //此時,編譯能通過但是 b此時的值為3 。這是不安全的賦值方法。

18樓:匿名使用者

直接賦值號賦值就行,不過不管怎麼賦值,肯定要有精度損失的

19樓:90老船長

要強制轉換,即

int a;

double b;

int a=(int)b;

20樓:匿名使用者

強制型別轉換

double a=1.1;

int b;

b=(int)a;

在C中怎樣設計類庫,c 怎樣建立類庫

類庫 class library 是一個綜合性的物件導向的可重用型別集合,這些型別包括 介面 抽象類和具體類。類庫可以解決一系列常見程式設計任務 包括諸如字串管理 資料收集 資料庫連線以及檔案訪問等任務 還可以解決多種專用開發任務 控制檯應用程式 桌面應用程式 web應用程式等 類庫字面意思就是類的...

c類成員函式可以定義變數嗎,C中定義的類,成員函式可以直接使用嗎

什麼叫 函式可以定義變數嗎 是在函式裡定義變數還是啥意思?沒有 函式可以定義變數 這種說法 c 中定義的類,成員函式可以直接使用嗎?沒有物件的時候要訪問類成員函式的話,只能訪問靜態成員函式。例如 class a 這樣可以在主函式裡直接用 a abc 這樣的語句進行呼叫。請教一下 c 類中privat...

C中的int和char之間的轉換問題

這要用到ascii碼的知識,粗略講一下 字元 0 的ascii碼為 48,然後是 1 2 3 9 字元 空格 的ascii碼為32.字元 a 的ascii碼為65,然後是 b c z 字元 a 的ascii碼為97,然後是 b c z 所以,把一個數字字元ch,轉為一個整數,就是ch 0 當然ch ...