无法检索静态char *数组

用户名

我有以下代码片段,目的是获取某些项目列表并打印。它可以正常编译,但是在运行时,输出与预期不符。我在结果意外的地方添加了评论。请让我知道我在做什么错。

#include <iostream>

using namespace std;

class cSample
{
private:
    static const char *list1[];
    static const char *list2[];

public:
    cSample();
    const char **GetList(int);
};

cSample::cSample()
{
}

const char *cSample::list1[] = {"Item1" , "Item2" , "Item3"};
const char *cSample::list2[] = {"Item4" ,"Item5" ,"Item6"};

const char **cSample::GetList(int i)
{
    switch(i)
    {
    case 1:
        return cSample::list1;
        break;
    case 2:
        return cSample::list2;
        break;
    default:
        break;
    }
}

int main(int argc , const char *argv[])
{
    cSample *oSample = new cSample();

    const char**list1Item = oSample->GetList(1);//Here getlist returns list1+list2 item which is wrong , I am not sure why...
    cout << "Items from List1 " << endl; 
    while(*list1Item != NULL)
    {
        cout << *list1Item << endl;
        list1Item++;
    }

    const char **list2Item = oSample->GetList(2);//whereas list2 items are returned correctly using same method any idea why?
    cout << "Items from list2" << endl;
    while(*list2Item != NULL)
    {
        cout << *list2Item << endl;
        list2Item++;
    }
    return 0;
}
达米恩·圣马卡里(Damien Saint-Macary)

您需要添加一个NULL来终止您的列表

const char *cSample::list1[] = {"Item1" , "Item2" , "Item3", NULL};

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法检索数组值

来自分类Dev

char的静态数组未填充

来自分类Dev

无法从函数检索填充的数组

来自分类Dev

无法打印char数组的元素

来自分类Dev

无法从对象数组中检索数据?

来自分类Dev

无法从哈希表检索Float数组

来自分类Dev

C无法检索mongodb BSON数组

来自分类Dev

无法从cfc中检索日期数组

来自分类Dev

无法从值数组中检索单个值

来自分类Dev

无法使用 XMLHttpRequest 从数组中检索元素

来自分类Dev

数组存在时无法从数组中检索值

来自分类Dev

将值从静态char数组分配给动态分配的char数组

来自分类Dev

如何在C++中传递和检索char数组

来自分类Dev

静态数组的动态数组的问题

来自分类Dev

动态数组与静态数组的大小

来自分类Dev

从静态数组构建数组

来自分类Dev

无法将char数组传递给函数

来自分类Dev

无法初始化char数组

来自分类Dev

无法在char数组上使用并行?

来自分类Dev

无法更改char数组中的字符

来自分类Dev

无法从C中的stdin打印char数组

来自分类Dev

C ++中的char数组无法正常运行

来自分类Dev

剔除JS数组为空或无法检索值?

来自分类Dev

无法从多个NumPy数组中检索所需的索引

来自分类Dev

无法从结构内部的字符数组中检索数据

来自分类Dev

无法从jQuery检索发布到Django的对象数组

来自分类Dev

我无法检索在PHP的$ _POST中设置的数组

来自分类Dev

无法从C ++中的多维数组检索正确的浮点值

来自分类Dev

无法使用ionic2从数组中检索数据