Форум программистов, компьютерный форум CyberForum.ru

Как объявить указатель на массив через typedef и как инициализировать такой тип - C++

Восстановить пароль Регистрация
 
Bohes
4 / 3 / 0
Регистрация: 10.07.2011
Сообщений: 310
Записей в блоге: 1
08.07.2014, 16:43     Как объявить указатель на массив через typedef и как инициализировать такой тип #1
Как заставить заработать этот фрагмент кода? INT_L -- указатель на массив из 100 элементов типа char; Не получается в переменную C нормально инициализировать, g++ все время ругается на разные типы.
C++ (Qt)
1
2
3
4
5
6
7
8
9
10
typedef char (*INT_L) [100];
INT_L  sum (INT_L A, INT_L B)
{
    INT_L C = new char[100];
    for (int i = 0; i < 100; ++i) {
        *C[i] = (char)((*A[i]+*B[i])%10);
        *C[i+1] += (char)((A[i] + B[i])/10);
    }
    return C;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2014, 16:43     Как объявить указатель на массив через typedef и как инициализировать такой тип
Посмотрите здесь:

Как инициализировать такой массив C++
Функциональный тип через typedef C++
Как объявить 10 значную переменную такой как 9876543210 C++
Как инициализировать указатель произвольным адресом? C++
как инициализировать указатель на структуру C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
DrOffset
6458 / 3832 / 885
Регистрация: 30.01.2014
Сообщений: 6,627
08.07.2014, 16:57     Как объявить указатель на массив через typedef и как инициализировать такой тип #2
Bohes2013, new char[100] возвращает char *, а не char (*) [100]. используй char *.
Bohes
4 / 3 / 0
Регистрация: 10.07.2011
Сообщений: 310
Записей в блоге: 1
08.07.2014, 23:30  [ТС]     Как объявить указатель на массив через typedef и как инициализировать такой тип #3
Цитата Сообщение от DrOffset Посмотреть сообщение
используй char *.
Можно поподробнее? У меня как раз с возникли сложности именно в этом.
mishelle92
57 / 56 / 19
Регистрация: 09.10.2012
Сообщений: 179
Завершенные тесты: 1
08.07.2014, 23:38     Как объявить указатель на массив через typedef и как инициализировать такой тип #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Может поменять
C++
1
typedef char (*INT_L) [100];
на
C++
1
typedef char *INT_L;
А зачем вы пишете *C[i], *A[i], *B[i]?
Bohes
4 / 3 / 0
Регистрация: 10.07.2011
Сообщений: 310
Записей в блоге: 1
08.07.2014, 23:56  [ТС]     Как объявить указатель на массив через typedef и как инициализировать такой тип #5
Цитата Сообщение от mishelle92 Посмотреть сообщение
А зачем вы пишете *C[i], *A[i], *B[i]?
Код претерпел очень много изменений, ошибка была в 4-й стоке, так что строки, расположенные ниже, я не успел еще поменять.
Yandex
Объявления
08.07.2014, 23:56     Как объявить указатель на массив через typedef и как инициализировать такой тип
Ответ Создать тему
Опции темы

Текущее время: 03:11. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru