• c++中string的用法(转)


    LTT的问题:

         1、C++中 char*,char[],string 三种类型有什么不同点和相同点,后者比前者有什么优势呢?

         答:

        (1)char *p,  表示p是一个指向字符串的指针
    (2)char p[], 表示p是一个字符串的数组,在某些时候,char p[] 和 char *p 是一样的,但对于上的实例,例如 char *p1 = "12345"; char p2[] = "12345"; 这个时候,sizeof(p1) ==4, strlen(p1) == 5, sizeof(p2) == 6, strlen(p2) == 5 (这里体现了strlen()只能用char*做参数,且必须是以“\0”结尾的。sizeof还可以用函数做参数。)
    (3)string s, 表示s是一个string类的对象,有它自己的成员变量和成员函数,具体的你可以查一下手册。这个和前两种区别比较大

    这三个在C++里面都可以表示一个字符串

         之所以抛弃char*的字符串而选用C++标准程序库中的string类,是因为他和前者比较起来,不必 
    担心内存是否足够、字符串长度等等,而且作为一个类出现,他集成的操作函数足以完成我们大多数情况下(甚至是100%)的需要。我们可以用 = 进行赋值操作,== 
    进行比较,+ 做串联(是不是很简单?)。我们尽可以把它看成是C++的基本数据类型。 

  • 相关阅读:
    Thread系列之WaitHandle
    C# lock,Monitor 介绍(多线程并发控制)
    C#多线程学习(五) 多线程的自动管理(定时器)
    Thread系列之AutoResetEvent
    Thread系列之Thread.Sleep(0)
    (转)Java 内存模型
    哈希表(一)
    Java GC
    哈希表(二)
    图(一)
  • 原文地址:https://www.cnblogs.com/meihao1989/p/2996751.html
Copyright © 2020-2023  润新知