首页 > 解决方案 > 为什么char数组返回垃圾值而不是我初始化它的值

问题描述

为什么我创建并初始化的 char 数组的值未正确打印,而是打印出一些随机字符/垃圾值?

这是我的代码:

class CharArrayChecker
{
public:
    CharArrayChecker() {};
    char* GetCharArray();
};

char* CharArrayChecker::GetCharArray()
{
    char Output[32] = "This is a test";
    return Output;
}

int main()
{
    CharArrayChecker* CharArrayCheck = new CharArrayChecker();
    
    const char* Test = CharArrayCheck->GetCharArray();
    printf("Output: %s\n\n", Test);
    return 0;
}

标签: c++pointersmemorychar

解决方案


推荐阅读