0

所以我试图在每次调用函数时使用 const char 创建一个数组我想像 strtok 一样添加到我的数组中

所以如果我想要设置

struct R2R
{
private:
    int Index;

    const char* DvarA[10000];
    const char* DValueA[100000];

public:
    void AddInfDvar( int DvarCount ,const char* Dvar, const char* Value)
    {
        setClientDvar(Dvar, Value);
        DvarA[DvarCount] = Dvar;
        DValueA[DvarCount] = Value;

    }
}R2R;

所以如果我这样称呼它

DvarA[1] = "Test";

GetDvar(int Num)
{
 return DvarA[Num];
}

它会返回测试吗?

我只是想确保我做得对

4

1 回答 1

0

您设置的代码创建了一个包含 10,000 个const char*s 的数组,每个数组都可以视为指向不可变 C 样式字符串的指针。因此,如果你写

DvarA[1] = "Test";

您将指向字符串文字“Test”的指针存储到数组中的插槽 1 中。如果你稍后再读它,你确实会得到“测试”。

于 2016-03-02T22:44:02.063 回答