C++返回字符串函数 有四种方式:

1。使用堆空间,返回申请的堆地址,注意释放
2。函数参数传递指针,返回该指针
3。返回函数内定义的静态变量(共享)
4。返回全局变量

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

其实就是要返回一个有效的指针,尾部变量退出后就无效了。 
使用分配的内存,地址是有效 
char   *fun()
{ char*   s = (char*)calloc(100,   sizeof(char*)   ); if   (s) strcpy( s,"abc"); return   s;
} 

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

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

将地址由入参传入 
char*   fun(char*s)
{ if (s) strcpy(s,"abc"); return   s;
} 

这种方式调用都要注意给s分配的大小是足够。 
可以这样: 
char*   fun(char*s,   int   len)
{ if   (s) { strncpy(s,   "abc ",   len-1); s[len-1]   =   0; } return   s;
} 

3.使用局部静态变量

char*   fun()
{ static   char   s[100]; strcpy(s,   "abc "); return   s;
} 

这种方式需要注意,不要修改返回的这个字符串,由于是共享地址,对它的修改会反应到每个调用者的。可以这样: 
const   char*   fun()
{ static   char   s[100]; strcpy(s,   "abc "); return   s;
} 

4.使用全局变量

char   g_s[100];
char*   fun()
{ strcpy(g_s,   "abc "); return   s;
} 

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

C++返回字符串函数的几种实现方法相关推荐

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

    有四种方式: 1.使用堆空间,返回申请的堆地址,注意释放 2.函数参数传递指针,返回该指针 3.返回函数内定义的静态变量(共享) 4.返回全局变量 其实就是要返回一个有效的指针,尾部变量退出后就无效了 ...

  2. java实现c语言的函数_C语言实现返回字符串函数的四种方法

    前言 C语言返回字符串函数共有四种方式,分别如下: 使用堆空间,返回申请的堆地址,注意释放 函数参数传递指针,返回该指针 返回函数内定义的静态变量(共享) 返回全局变量 下面来看看详细的介绍 其实就是 ...

  3. c语言中用于获取字符串长度的函数是,C语言中求字符串长度的函数的几种实现方法...

    C语言中求字符串长度的函数的几种实现方法 1.最常用的方法是创建一个计数器,判断是否遇到'\0',不是'\0'指针就往后加一. int my_strlen(const char *str) { ass ...

  4. c++STL中的find()函数 有两种使用方法

    c++STL中的find()函数 有两种使用方法 方法一: 开头引头文件:中的函数 其调用形式为 find(start,end,value) start搜寻的起点,end搜寻的终点,要寻找的value ...

  5. java调用javascript函数_[Java教程]JavaScript函数的4种调用方法详解

    [Java教程]JavaScript函数的4种调用方法详解 0 2016-08-09 00:00:12 在JavaScript中,函数是一等公民,函数在JavaScript中是一个数据类型,而非像C# ...

  6. Python Lambda函数的几种使用方法

    在进行编程时,一般我们会给一个函数或者变量起一个名字,该名称是用于引用或寻址函数变量.但是有一个低调的函数,你不需要赋予它名字,因此该函数也叫匿名函数.该函数就是Python中的Lambda函数,下面 ...

  7. python比较两个字符串相似度_详解Python 字符串相似性的几种度量方法

    字符串的相似性比较应用场合很多,像拼写纠错.文本去重.上下文相似性等. 评价字符串相似度最常见的办法就是:把一个字符串通过插入.删除或替换这样的编辑操作,变成另外一个字符串,所需要的最少编辑次数,这种 ...

  8. 字符串相似性的几种度量方法

    一: 字符串相似性的几种度量方法 https://blog.csdn.net/shijing_0214/article/details/53100992 1.余弦相似性(cosine similari ...

  9. JavaScript中函数的三种定义方法

    JavaScript中函数定义的三种方法. 函数的三种定义方法分别是:函数定义语句.函数直接量表达式和Function()构造函数的方法.下面依次介绍这几种方法具体怎么实现. 1. 函数定义语句 // ...

最新文章

  1. 一个支付案例,学会策略模式!
  2. 干掉MessageBox,自定义弹出框JMessbox (WindowsPhone)
  3. 为什么远程桌面不能复制?解决方法
  4. 特斯拉员工自曝:为应付产能不惜偷工减料,出厂测试得过且过
  5. 23种设计模式C++源码与UML实现--装饰者模式
  6. WinFormsChartSamples
  7. 深度学习制作数据集的部分代码实现(解压zip、生成json文件)
  8. 档案电子封装包Java类,email: Android电子邮件库(基于JavaMail封装)
  9. java中的static类_再议Java中的static关键字
  10. 网站速度优化的三套解决方案
  11. Dism 错误 87
  12. ImageLoader加载圆形图片
  13. 请编写一个正方体类,类的私有数据成员是边长,要求用公有成员函数实现以下功能:1. 由键盘分别输入正方体的边长2. 计算并输出正方体的体积
  14. 【Hive】总体标准差stddev()
  15. 04. 交换机的端口聚合配置
  16. 2015最新经典语句搞笑段子
  17. SQL语句查询不同年龄段人数
  18. pyqt中treeview控件右键单击操作
  19. 几种开源虚拟产品的介绍及性能比较
  20. 知识图谱表示学习 TransE: Translating Embeddings for Modeling Multi-relational Data

热门文章

  1. ssh: connect to host localhost port 22: Connection refused 问题
  2. AnyChat SDK支持哪些开发语言?
  3. 理解Flex itemRenderer(5)--效率
  4. CodeForces 416B
  5. 《机器学习实战》chapter04 使用Python进行文本分类
  6. NYOJ 590 相同的和
  7. hdu 1166 敌兵布阵 树状数组
  8. Linux 内核链表 【转】
  9. centos 6.5 下 nginx 简单优化_虚拟主机_负载均衡
  10. Object value iterator:值迭代器