VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
12
返回列表 发新帖
楼主: 海里的浪

返回char *这样的变量?

[复制链接]

0

主题

3

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-5-2 13:00:01 | 显示全部楼层
把实参传给这个n呀
回复

使用道具 举报

3

主题

10

帖子

9.00

积分

新手上路

Rank: 1

积分
9.00
 楼主| 发表于 2020-5-3 15:00:02 | 显示全部楼层
out这个参数如何传入?
回复

使用道具 举报

0

主题

4

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-5-8 21:00:01 | 显示全部楼层
void fun(char *in,char *out),
如果想在fun中为out分配空间的话是很危险的,因为你不知道什么时候释放他。

要看你的fun想实现什么功能。
如果只是想最加字符之类的可以这样做。

void fun(char* in, char* out)
{
  int i = strlen(in);
  int i1 = strlen(out);
  char* szBuff = new char[i1+1];
  strcpy( szBuff, out );
  if(out){ delete out; out=NULL;}
  out = new char[i+i1+1];
  sprintf( out, "%s%s", szBuff, in );
  delete []szBuff;
}

void main()
{
  char* out = new char[6];
  strcpy( out, "Hello" );
  fun( " LZ", out );
  printf( "%s\n", out );
  delete []out;
}
回复

使用道具 举报

0

主题

1

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2020-6-7 10:15:01 | 显示全部楼层
调用某个函数,传递地址
该指针在调用该函数之前申明,内存申请
在调用该函数之后,释放,置空

否则会有危险
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表