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

Как описать в структуре строку не через указатель - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Обращение потока к функции-члену класса http://www.cyberforum.ru/cpp-beginners/thread1305573.html
Есть Класс MainWindow, функцией-членом которой выступает Reader(), при попытке обратиться поток к данной функции-члену из main'a через экземпляр класса w for(i=0;i<M;i++) { RE = std::thread(w.Reader);; } сыпется ошибка no matching function for call to 'std::thread::thread(<unresolved overloaded function type>)
C++ Найти сумму нечетных делителей натурального числа Найти сумму нечетных делителей натурального числа. Hапишите полный текст программы пожалуйста. Спасибо http://www.cyberforum.ru/cpp-beginners/thread1305567.html
C++ Определить, сколько раз меняется знак в последовательности чисел, введенных с клавиатуры, применив массив
Помогите пожалуйста! Записать программу, определяющую сколько раз меняется знак в последовательности чисел, введенных с клавиатуры, применив массив на С++
Метод Якоби. Выводит результат -1.INF и -1.IND C++
Вот сделал прогу, но почему-то вместо нормального результата выводит это: result|x: -1.#INF -1.#IND -1.#INF -1.#IND -1.#IND нигде на 0 не делится да и числа маленькие. Подскажите в чем проблема?
C++ Как можно редактировать инструмент класса CListCtrl извне. Возможны ли альтернативы? http://www.cyberforum.ru/cpp-beginners/thread1305563.html
Добрый день! Передо мной стоит задача разработать приложение c GUI. необходимо выводить название файлов, содержащихся в папке, в виде списка. А также необходимо осуществить возможность редактировать название файлов в этом списке из диалога. Я пишу на VC++(возможно старо, но все же). Инструмент выбрала класса CListCtrl. Но есть одна проблема, в функциях данного метода не предусмотрено...
C++ Вычисление определенных интегралов методом прямоугольников Дана тема: Вычисления определенных интегралов методом прямоугольников. К примеру, дан интеграл, от а до b, количество шагов N, посчитать сумму. Нужно в C++ сделать. Сижу уже второй час, пока не разобрался. подробнее

Показать сообщение отдельно
MrAndrey_ka
 Аватар для MrAndrey_ka
77 / 77 / 2
Регистрация: 13.05.2009
Сообщений: 536
Записей в блоге: 1
19.11.2014, 23:36     Как описать в структуре строку не через указатель
Есть структура
C
1
2
3
4
5
6
7
8
9
10
struct InfoBuf {
size_t Len;
char Data[]; / ???
static InfoBufType* Create(size_t Size, char* Val){
    InfoBufType* P = (InfoBufType*)new char[Size + sizeof(size_t )];
        P->Len = Size;
                memcpy(P->Data, Val, Size, Size);
        return P;
        }
    };
как видно структура должна создается только динамически с помощью метода Create, при этом выделяется память указанного размера + память для хранения переменной Len, например InfoBufType* I = InfoBufType.Create(7, "Привет") выделит 7 + 2 байт и запишет в первые 2 число 7, а начиная с третьего "Привет". А через I можно обратится к Len и дата но компилятор выдает предупреждение
warning C4200: нестандартное расширение: массив нулевого размера в структуре (объединении)
1> Невозможно создать конструктор копии или оператор присвоения копии, когда UDT содержит массив нулевого размера

как можно написать такую структуру и обойти это предупреждение
(вынести переменную в метод Data() не предлагать, идея в том чтобы ее было видно при отладке, при просмотре значений переменных
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 00:30. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru