Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ c++;返回错误字符的数组_C++_Arrays_Pointers - Fatal编程技术网

C++ c++;返回错误字符的数组

C++ c++;返回错误字符的数组,c++,arrays,pointers,C++,Arrays,Pointers,当前,以下代码返回的数组末尾附加了符号时出现问题。这是我能得到的最小代码,以便重现错误。是什么导致了这个问题?我假设数组中的数字以某种方式被解释为ascii符号,但我不知道这是在哪里发生的 #include "stdafx.h" #include <iostream> #include <iomanip> #include <string> using namespace std; const int numRow = 6; const int numCo

当前,以下代码返回的数组末尾附加了符号时出现问题。这是我能得到的最小代码,以便重现错误。是什么导致了这个问题?我假设数组中的数字以某种方式被解释为ascii符号,但我不知道这是在哪里发生的

#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <string>

using namespace std;

const int numRow = 6;
const int numCol = 26;

char letters[numRow][numCol] = {

    { 'm', 'w', 'r', 'u', 't', 'v', 'n', 'j', 'd', 'j', 'y', 'k', 'k', 'g', 'g', 'd', 'c', 'v', 'n', 'x', 'm', 'd', 'q', 'y', 'u', 't' },
    { 'y', 'e', 'r', 'y', 'e', 't', 'w', 'y', 'u', 'w', 'r', 's', 'f', 'h', 's', 'g', 'a', 'a', 'g', 'd', 'b', 'b', 'b', 'g', 'x', 'z' },
    { 'j', 'd', 'j', 'y', 'k', 'k', 'g', 'g', 'd', 'c', 'v', 'n', 't', 'w', 'y', 'u', 'w', 'r', 's', 'f', 'h', 's', 'g', 'a', 'a', 'g' },
    { 'y', 'e', 't', 'w', 'y', 'u', 'w', 'r', 's', 'f', 'h', 'j', 'y', 'k', 'k', 'g', 'g', 'd', 'c', 'v', 'g', 'a', 'a', 'g', 'd', 'b' },
    { 'e', 'r', 'y', 'e', 't', 't', 'v', 'n', 'j', 'd', 'j', 'y', 'k', 'w', 'r', 's', 'f', 'h', 's', 'g', 'g', 'g', 'd', 'c', 'v', 'g' },
    { 'y', 'u', 'w', 'r', 's', 'f', 'h', 's', 'g', 's', 'f', 'h', 's', 'g', 'a', 'a', 'g', 'd', 'w', 'y', 'u', 'w', 'r', 's', 'f', 'h' }
};






int main()
{

    char *ltrptr;
    ltrptr = &letters[0][0];

    const int arraySize = 6 * 26;
    int answer = 0;

    cout << " Select row for sort: " << endl;
    cin >> answer;
    char newArray[numCol];
    char *ltrptr2;
    ltrptr2 = &newArray[0];

    for (int i = 0; i < numCol; i++){
        newArray[i] = letters[answer - 1][i];

    }
    cout << "Selected row: before" << newArray << endl;
    selectionSort(ltrptr2, numCol, ascending);
    cout << "Selected row: after " << newArray << endl;

    getchar();
    return 0;
} 
#包括“stdafx.h”
#包括
#包括
#包括
使用名称空间std;
常数int numRow=6;
常数int numCol=26;
字符字母[numRow][numCol]={
{'m','w','r','u','t','v','n','j','d','j','y','k','g','g','d','c','v','n','x','m','d','q','y','u','t'},
{'y','e','r','y','e','t','w','y','u','w','r','s','f','h','s','g','a','a','g','d','b','b','g','x','z'},
{'j','d','j','y','k','k','g','g','d','c','v','n','t','w','y','u','w','r','s','f','h','s','g','a','g'},
{'y','e','t','w','y','u','w','r','s','f','h','j','y','k','k','g','g','d','c','v','g','a','a','g','d','b'},
{'e','r','y','e','t','t','v','n','j','j','y','k','w','r','s','f','h','s','g','g','d','c','v','g'},
{'y','u','w','r','s','f','h','s','f','h','s','g','a','g','d','w','y','u','w','r','s','f','h'}
};
int main()
{
字符*ltrptr;
ltrptr=&字母[0][0];
常数int arraySize=6*26;
int-answer=0;
答不上来;
char newArray[numCol];
字符*ltrptr2;
ltrptr2=&newArray[0];
对于(int i=0;icout如果你真的包括你得到的输出和你期望的输出(以及给出的输入),而不是试图描述输出,那会更好

但是,您的代码有一个明显的错误,这与您模糊的描述是一致的:您没有在字符数组中放入C字符串,但您尝试将其打印为包含C字符串


(特别是,要在字符数组中存储C字符串,必须先存储字符序列,然后再存储空字符)

试着在调试模式下运行它,失败的话,试一下
-march=sparc3
是不是
selectionSort
一个windows的东西,或者这不是一个完整的例子?你的例子,请提供一个!嘿,请不要投票,因为我复制了一个我不想复制的部分。很抱歉这个糟糕的问题哈。selectionSort只是一个用于此目的的函数rting,但它不应该是示例的一部分,因为在调用之前就发生了错误。此外,我想补充一点,我正在尝试调用2d数组中的特定行。我将发布输入和输出屏幕截图。好的,我将数组放入for循环,它更正了问题。谢谢。我应该发布更正的代码吗?