strlen函数是不包括‘\0’的长度的,sizeof计算的结果才包括'\0'的长度:
C++ new动态数组初始化
void testnew( const char* str )
{
if (!str){
m_pdata = ;
}
else{
     int len = strlen(str);
m_pdata = new char[len + ];
strcpy(m_pdata,str);
     m_pdata[len] = '\0';
}
}

动态数组初始化:

对于内置数据类型元素的数组,必须使用()来显示指定程序执行初始化操作,否则程序不执行初始化操作:

int *pia = new int[10]; // 每个元素都没有初始化

int *pia2 = new int[10] ();  // 每个元素初始化为0

类类型元素的数组,则无论是否使用(),都会自动调用其默认构造函数来初始化:

string *psa = new string[10];  // 每个元素调用默认构造函数初始化

string *psa = new string[10]();  // 每个元素调用默认构造函数初始化

最新文章

  1. php清理服务器无效软链接(源码)
  2. C#文件相同性判断
  3. 实战p12文件转pem文件
  4. OMG点菜系统
  5. Android--UI之EditText
  6. c#判断网络连接状态示例代码
  7. bzoj2119
  8. PHP 概述 特点 基础语法
  9. python成长之路第一篇(5)文件的基本操作
  10. 点集配对问题(状态dp)
  11. JS实现为控件添加倒计时功能
  12. 自动化运维工具——ansible详解(二)
  13. (一一九)通过CALayer实现阴影、圆角、边框和3D变换
  14. James Munkres Topology: Theorem 19.6
  15. Linux 主要目录速查表
  16. There are multiple modules with names that only differ in casing. 黄色warning
  17. JQuery官方学习资料(译):避免与其他库的冲突
  18. 修改mybatis plus Generator模板生成字段注释枚举常量
  19. ASP.NET Web Service 标准SOAP开发案例代码(自定义验证安全头SOAPHeader)
  20. mysql之show engine innodb status解读(转)

热门文章

  1. EZ 2018 04 13 NOIP2018 模拟赛(八)
  2. 蓝牙disable流程简述
  3. jqGrid 列内容超过一定长度省略表示
  4. 使用C#创建WCF服务控制台应用程序
  5. 12、利用docker快速搭建Wordpress网站
  6. SSM整合配置(Spring+Spring MVC+Mybatis)
  7. Unity 音频合并
  8. MIT-6.828-JOS-lab3:User Environments
  9. python之GIL理解
  10. Daily Scrumming* 2015.12.16(Day 8)