#include <iostream>
#include <malloc.h>
using namespace std;
typedef struct
{
char* ch;
int length;
} Str;
void Strassign(Str& str,char *ch)//结构体的引用
{
cout<<str.ch<<endl;
if(str.ch)
delete(str.ch);
int len=0;
char *c=ch;
//cout<<c[3]<<endl<<endl;
while(*c) // \0和NULL都会弹出
{
len++; //这里的len是不算\0的len
c++;
}
if(len==0)
{
str.ch=NULL;
str.length=0;
}
else
{
str.ch=(char *)malloc(sizeof(char)*(len+1));
c=ch; //注意要让c指回来
for(int i=0; i<=len; i++)
{
str.ch[i]=*c;
c++;
}
str.length=len;
cout<<str.ch<<endl;
}
return ;
}
int main()
{
Str str;
str.ch="hhahhhh";
Strassign(str,"ahcici");
return 0;
}
串的赋值操作(C++)
最新推荐文章于 2024-09-10 14:28:30 发布