⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 string.cpp

📁 这是我上学时的C++实验。。。 里面包含了类的应用
💻 CPP
字号:
#include <iostream.h>
#include <string.h>

/////////////////////////////////////
class str            //STR类的定义
{
private:
	char* content;   //串中的内容
	int length;      //串的长度
public:
	str(char* string='\0')   //构造函数
	{	
		content=new char[strlen(string)+1];
		strncpy(content,string,strlen(string));
		content[strlen(string)]='\0';
		length=strlen(content);
	}
	~str()                //析构函数
	{
		delete []content;
	}
	void display()        //显示
	{
		cout<<"此字符串是:"<<endl;
		cout<<content<<endl;
	}
	int get_length()    //取长度
	{
		return length;
	}
	void connect(char* str_new);  //连接
};

/////////类的实现///////////////////////////
void str::connect(char* str_new)
{		/*用strncpy()函数居然不对*/

		char* temp;//临时存储空间

		temp=new char[strlen(content)+1];
		strcpy(temp,content);
		/*strncpy(temp,content,length);*/
		temp[strlen(content)]='\0';//将CONTENT复制到TEMP中

		content=new char[length+strlen(str_new)+1];//给CONTENT重新分配够新串连接后的空间
		strcpy(content,temp);//将TEMP付给CONTENT中,即将原来的CONTENT仍然放进去
		/*strncpy(content,temp,length);*/
		
		strcat(content,str_new);//连接
		content[length+strlen(str_new)]='\0';

		delete []temp;//删除临时空间

		length+=strlen(str_new);
}

/////////////////////////////////////////
int main()
{
	int len;
	str s("kajfkasfjkakf");
	s.display();
	len=s.get_length();
	cout<<"输入新字符串"<<endl;
	
	char* s_new;//新串,连接到原串后的
	s_new=new char[10];
	cin>>s_new;
	s.connect(s_new);
	s.display();
	delete []s_new;

	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -