最新回答 / 流浪_老
const int * p; ?不能 改變*p ? 就是不能*p=2 ?等等之類的int * const p;?不能 改變p ? 就是不能p=&x ?等等之類的
2015-12-17
已采納回答 / onemoo
p是指針,且不是const指針,也就是說你可以更改p的指向,讓p指向其他int變量。x和y是兩個(gè)不相關(guān)的變量,一開始時(shí)p是指向x的。p=&y; ?這一語句你讓p指向y這個(gè)變量,那么再*p得到就是y,與x完全沒有關(guān)系了。C++是一門強(qiáng)類型的語言,變量的所有行為都與它的類型有關(guān)。p的類型聲明為 int const *p ,這里的const修飾的是前面的int,也就是說,p所指的對(duì)象是const int的,那么*p得到的對(duì)象的類型也被當(dāng)作是const int的,所以才不能被修改。這與p到底指向什么無關(guān),...
2015-12-16
有點(diǎn)無語,因?yàn)樗木尤徊荒躦etMax(numArr[0],numArr[3])這樣,而且6必須在里面我也是醉了
#include <string.h>
#include <iostream>
using namespace std;
int main(void)
{
//在堆中申請100個(gè)char類型的內(nèi)存
char *str = new char[100];
//拷貝Hello C++字符串到分配的堆中的內(nèi)存中
strcpy(*p, "Hello imooc");
//打印字符串
cout<<*p<<endl;
//釋放內(nèi)存
delete []p;
p=NULL;
return 0;
}
#include <iostream>
using namespace std;
int main(void)
{
//在堆中申請100個(gè)char類型的內(nèi)存
char *str = new char[100];
//拷貝Hello C++字符串到分配的堆中的內(nèi)存中
strcpy(*p, "Hello imooc");
//打印字符串
cout<<*p<<endl;
//釋放內(nèi)存
delete []p;
p=NULL;
return 0;
}
堆,就是那些由new分配的內(nèi)存塊,他們的釋放編譯器不去管,由我們的應(yīng)用程序去控制,一般一個(gè)new就要對(duì)應(yīng)一個(gè)delete。如果程序員沒有釋放掉,那么在程序結(jié)束后,操作系統(tǒng)會(huì)自動(dòng)回收。
2015-12-10