指针 数组 string 与sizeof strlen

    xiaoxiao2021-03-25  93

    基础的入门知识,但很重要!

    1,指针

    指针如果为空

    char * a=NULL;

    只能使用sizeof ,大小为4,不能输出。

    char * a=“”; std::cout << a << "---" << sizeof(a) << "---" << strlen(a) << std::endl;

    结果为:---4---0,内容为空

    char * a="hello"; //可以改变指向,不可以改变当前字符串内容:a = "word"; std::cout << a << "---" << sizeof(a) << "---" << strlen(a) << std::endl;

    结果为:hello---4---5,不包括‘\0’.

    2,数组

    char a[10] = {};//{0},{'\0'},不可以赋值为NULL std::cout << a << "---" << sizeof(a) << "---" << strlen(a) << std::endl;

    结果为:---10---0,内容为空。

    char a[10] ="hello";

    std::cout << a << "---" << sizeof(a) << "---" << strlen(a) << std::endl;

    结果为:hello---10---5

    3,string

    string a ="hello word"; std::cout << a << "---"<< sizeof(a)<< "---" << sizeof(a.c_str()) << "---" << strlen(a.c_str()) << std::endl;

    结果为:hello word---28---4---10。

    转载请注明原文地址: https://ju.6miu.com/read-10649.html

    最新回复(0)