#include <iostream>#include <string>using namespace std;
void main(){ //exp.5char c[10] = "abc";
char *charPtr = c; //charPtr & c are in stack cout << "char c[10] = \"abc\"\nchar* charPtr=c" << endl; cout << "&c is : " << &c << endl; cout << "*charPtr is : " << *charPtr << endl; cout << "charPtr is : " << charPtr << endl; cout << "&charPtr is : " << &charPtr << endl;cout << "sizeof(c) is : " << sizeof(c) << endl;
cout << "sizeof(charPtr) is : " << sizeof(charPtr) << endl;
cout << "sizeof(*charPtr) is : " << sizeof(*charPtr) << endl << endl;
charPtr = new char[3]; // charPtr in memory: 0x00395ff0 3760112(D)
//charPtr is pointing to the heap
cout << "charPtr = new char[3]" << endl; cout << "*charPtr is : " << *charPtr << endl; cout << "charPtr is : " << charPtr << endl; cout << "&charPtr is : " << &charPtr << endl;cout << "sizeof(charPtr) is : " << sizeof(charPtr) << endl;
cout << "sizeof(*charPtr) is : " << sizeof(*charPtr) << endl << endl;
charPtr= (char *)malloc(100) ; // charPtr in memory: 0x003962a8 3760808(D)
cout << "*charPtr= (char *)malloc(100) " << endl; cout << "*charPtr is : " << *charPtr << endl; cout << "charPtr is : " << charPtr << endl; cout << "&charPtr is : " << &charPtr << endl;cout << "sizeof(charPtr) is : " << sizeof(charPtr) << endl;
cout << "sizeof(*charPtr) is : " << sizeof(*charPtr) << endl << endl;
free(charPtr);
cout << "free(charPtr)" << endl; //cout << "charPtr is : " << charPtr << endl; //运行时错误:sizeof.exe 中的 0x1026f8e0 (msvcr90d.dll) 处未处理的异常: 0xC0000005: 读取位置 0x00397000 时发生访问冲突 cout << "*charPtr is : " << *charPtr << endl << endl; //charPtr=NULL; //cout << "charPtr=NULL" << endl; //cout << "*charPtr is : " << *charPtr << endl; /* char c[10] = "abc" char* charPtr=c &c is : 0012FF54 *charPtr is : a charPtr is : abc &charPtr is : 0012FF48 sizeof(c) is : 10 sizeof(charPtr) is : 4 sizeof(*charPtr) is : 1 charPtr = new char[3] *charPtr is : charPtr is : 屯妄 &charPtr is : 0012FF48 sizeof(charPtr) is : 4 sizeof(*charPtr) is : 1 *charPtr= (char *)malloc(100) *charPtr is : charPtr is : 屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯 屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯屯 &charPtr is : 0012FF48 sizeof(charPtr) is : 4 sizeof(*charPtr) is : 1 free(charPtr) *charPtr is : 请按任意键继续. . . */}
浙公网安备 33010602011771号