delete操作相关

源代码来自C++ Primer Plus 第六版,第四章,下载地址为:http://download.csdn.net/detail/tianzhaixing/6206719


// delete.cpp -- using the delete operator
#include <iostream>
#include <cstring>      // or string.h
using namespace std;
char * getname(void);   // function prototype
int main()
{
	char * name;        // create pointer but no storage

	name = getname();   // assign address of string to name
	cout << name << " at " << (int *) name << "\n";
	delete [] name;     // memory freed

	name = getname();   // reuse freed memory
	cout << name << " at " << (int *) name << "\n";
	delete [] name;     // memory freed again
	return 0;
}

char * getname()        // return pointer to new string
{
	char temp[80];      // temporary storage
	cout << "Enter last name: ";
	cin >> temp;
	char * pn = new char[strlen(temp) + 1];
	strcpy(pn, temp);   // copy string into smaller space

	return pn;          // temp lost when function ends
}


你可能感兴趣的:(C++,strcpy)