C中,intpnewint為什麼不正確

2021-03-04 09:20:51 字數 2107 閱讀 6883

1樓:匿名使用者

這樣子是沒有問題的啊,你定義了一個二重指標,指向了一個具有5個int*元素的陣列。

2樓:

除了沒有分號外,沒看出**不正確

3樓:匿名使用者

是不是你最後沒有打分號。。。

c++中,int *p=new int是可有可無的嗎?

4樓:匿名使用者

int *p = new int;

是在堆中給變數分配了一個空間,當用完後需要手動釋放。可以使用delete()函式

如果沒有int *p = new int; 是不能給p進行賦值的 因為沒有分配空間。

你也可以使用malloc分配空間,但最後釋放的時候要使用free()函式

5樓:匿名使用者

如果是int * p;

*p = 0;

那麼結果是不可預知的,可能正常執行,也可能立即崩潰,或者在任何無法預知的時候出現任何無法預知的問題。

如果是int t;

int * p=new int;

p = &t;

將會造成記憶體洩漏,如果多次出現這樣的情況,將會導致程式可用的記憶體越來越少。

6樓:千江月

不是可有可無的,得看你如何使用

舉例:1、 int *p = new int;

*p = 5;

此時p沒有空間必須申請

2、int a = 5;

int *p;

p = &a; //p不用重新申請空間,它指向a的空間。。

7樓:匿名使用者

看你對p賦值是什麼意思了。

如果說讓p指向另外一個int *指標可以。

但是如果說你要 *p =1或者什麼就不行了。

必須得new int分配空間

c++的int (*p)[3]與int *p,int**p的區別

8樓:匿名使用者

int *p是指標,指向一個int型別;int **p是指標的指標指向int *型別(理解方便,可以理解為int *型別);int (*p)[3] 是指標的指標(二維陣列指標),指向一個陣列,而陣列內容指向一個一維含3個元素的陣列,簡單講即*p指向int[3]型別,當然*(p+1)....*(p+n)都指向一個一維含3個元素的陣列,p本身指向一個陣列。

new int[5][5]編譯是通不過的,二維動態陣列不是這樣分配的,需要先申請int *型別陣列,陣列的元素再賦值為int [5]型別的資料即

int **p=new int*[5];

for(int i=0;i<5;++i)

p[i] = new int[5];

9樓:匿名使用者

int (*p)[3]表示p是個指向維度為3的二級指標相當於一個n行3列陣列a[n][3],每一行的首地址;

int *p表示一個指向整形的指標;

int**p表示一個二級指標;

其中int (*p1)[3]與int**p2都是二級指標,對於二維陣列來說我覺他們最大區別就是p1只能指向列數為3的二維陣列的首地址;而p2可以指向任意二維陣列首地址;同時要注意他們兩者之間+ 、++ 等運算子的規律也不一樣

10樓:朗懌

int (*p)[3],p是一個陣列指標

int *p; p是一個指標變數

int **p; p是一個二級指標

c++ int n; int *p=new int[n];怎樣初始化

11樓:好激動加入

new int [n]會申

復請一個n個int元素的內製存空間,相當於一個n個int元素的陣列bai,這個值會被賦值給dup[i]。

p為int *為元素的陣列,

或zhiint**指標,其中p[i]為p的第i個元dao素。

於是這句話的意思就是,在p的第i個元素分配n個int元素的空間。

其後可以使用p[i][0]到p[i][n-1]共計n個元素。使用後,需要呼叫

delete p[i];

請問c裡面,int p new int 2 是為p指標申請堆區大小為4的指標域,並賦值

int p new int 2 這裡的 int 2 是呼叫構建函式,引數值是2。意思是 宣告 p 是 整型指標,動態分配 sizeof int 位元組儲存區給它,初始化為 2。於是,語句裡可以用 p,p 0 delete p int p new int 2 2 語法錯,不可以對陣列作初始化。只可以 ...

c中型別後跟再跟變數是什麼意思,C 中,為什麼在值型別後面加問號

是 可空 型別!比如 int?a 那麼 可以這樣賦值 a null 可空型別是 system.nullable 結構的例項。可空型別可以表示其基礎值型別正常範圍內的值,再加上一個 null 值。例如,nullable,讀作 可空的 int32 可以被賦值為 2147483648 到 21474836...

c語言和c中主函式main的括號中為什麼可以有引數

這是因為 主函式main並非程式的真正入口 在編譯器對你的工程檔案進行編譯時,它是內先找到你的main函式容,然後根據main函式型別,把一段字首入口程式預先編譯,再讓它去呼叫main函式.當你的main函式需要引數時,它就編譯有引數main函式呼叫,反之則編譯無引數main函式呼叫.所以編譯器是自...