c++ - 如何在 C++ 中生成打印 char [ ] 数组的函数?

标签 c++ arrays function char

我正在尝试编写一个小函数来打印中间和末尾包含 0 的字符数组。我的函数没有正确打印它,我缺少什么:-(
预期结果:Good-bye0ld0 实际:再见

// call function 
char str5[] = { 'G','o','o','d','-','b','y','e',0,'l','d',0 };
    displayResult(str5);

// This is function 

     void displayResult(string _st)
    {
        int l = _st.length();
        for (int i = 0; i<=l; i++)
    {
        cout << _st[i];
        //printf("%s\n", _st[i]);
    }
    cout << endl;
    }

最佳答案

将 0 作为字符 '0'。因为 '0' 和 0 不一样。当您简单地输入 0 时,您指定的字符的 ASCII 代码是一个空终止符(字符串结尾的标记),您不会在那里看到任何东西。并且不要忘记将空终止符放在末尾。

char str5[] = { 'G','o','o','d','-','b','y','e','0','l','d','0','\0' };

关于c++ - 如何在 C++ 中生成打印 char [ ] 数组的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37035650/

相关文章:

c++ - 如何处理已发布的抽象基类的变化?

javascript - 当两个不同对象的两个值匹配时,向对象添加新的键/对

c - 从数组打印路径?

sql-server - sql server 函数中的 newid()

python - 在同一类python中调用私有(private)函数

c++ - 制作复制构造函数

c++ - 在哪种情况下我们应该更喜欢返回错误值而不是抛出异常

c++ - 如何使用 TR1 在 Mac OS 上编译 C++

将数字读入数组时代码崩溃...C 语言

python - 测试 numpy 数组中的行是否与给定行相同或每个元素不同