gpt4 book ai didi

c++ - 将指向字符串文字的指针返回给调用者是否安全?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:44 25 4
gpt4 key购买 nike

char* stringReturn()
{
char a[] = "Array of characters";
//return a; // I know stack allocation should not be returned

char *b = "Pointer to a string";
return b; // Is it safe ?
}


int main() {
char *str = stringReturn ();
cout<< str;
return 0; }

这是安全的,意味着“指向字符串的指针”数据将存储在内存中的位置。

最佳答案

是的,返回b的值是安全的。 b 指向的字符串文字具有静态存储持续时间。

但是,您必须正确地声明您的指针 constb 必须是 const char*b

关于c++ - 将指向字符串文字的指针返回给调用者是否安全?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9981009/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com