Элементы массива не возвращаются должным образом в C++ [закрыто]C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Элементы массива не возвращаются должным образом в C++ [закрыто]

Сообщение Anonymous »

Я новичок в C++ и немного пытаюсь решить эту проблему. У меня есть собственный класс «Кнопка» со строковым атрибутом, из которого я создал массив. При попытке получить эту строку из элемента, добавленного в этот массив, она возвращает либо ничего, либо случайные символы.
Это функция, которую я использовал для проверки этого, печатается первый оператор printf. правильное значение, а второе нет.

Код: Выделить всё

    //used to write text at a given point on the screen
void Scene::NewText(LCD1602 lcd, const char *text, int column, int row){
Button newText = Button(lcd, text, column, row);

printf("%s \n",text);

_textArray[textNum] = newText;

printf("%s \n", _textArray[textNum]._buttonText); //prints newText from _textArray
textNum++;
}

_textArray — это массив созданных кнопок.

Код: Выделить всё

        Button _textArray[100];
а это массив символов для хранения текста в классе кнопки:

Код: Выделить всё

    char _buttonText[100]; //text displayed by button.
Вывод должен быть «HELLO», именно это я и использовал в своем основном файле для проверки этой функции:

Код: Выделить всё

Scene scene1 = Scene(0);

Код: Выделить всё

    scene1.NewText(lcd, "HELLO", 0, 0);
Будем благодарны за любую помощь :)

Подробнее здесь: https://stackoverflow.com/questions/781 ... urned-in-c
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»