免费学习网考试资料计算机类内容页

C语言中返回字符串函数的实现方法

2021-09-12 15:45:01 计算机类

  C语言中返回字符串函数的实现方法

  C语言中返回字符串函数的实现方法你知道吗?相信很多人都想了解,下面小编给大家介绍C语言中返回字符串函数的`实现方法,欢迎阅读!

  C语言中返回字符串函数的实现方法

  有四种方式:

  1。使用堆空间,返回申请的堆地址,注意释放

  2。函数参数传递指针,返回该指针

  3。返回函数内定义的静态变量共享

  4。返回全局变量

  其实就是要返回一个有效的指针,尾部变量退出后就无效了。

   使用分配的内存,地址是有效

  char *fun

  char* s = char*calloc100, sizeofchar* ;

  if s

  strcpy s , "abc " ;

  return s;

  但这种方式需要注意,必须由使用将将返回的地址free掉

   将地址由入参传入

  char* funchar*s

  if s

  strcpys, "abc ";

  return s;

  这种方式调用都要注意给s分配的大小是足够。

  可以这样:

  char* funchar*s, int len

  if s

  strncpys, "abc ", len-1;

  s[len-1] = 0;

  return s;

  或才使用局部静态变量

  char* fun

  static char s[100];

  strcpys, "abc ";

  return s;

  这种方式需要注意,不要修改返回的这个字符串,由于是共享地址,对它的修改会反应到每个调用者的。可以这样:

  const char* fun

  static char s[100];

  strcpys, "abc ";

  return s;

   还有一种是使用全局变量

  char g_s[100];

  char* fun

  strcpyg_s, "abc ";

  return s;

  同样的,也要注意这个变量可存储的最大空间。

猜你可能喜欢