Форум программистов, компьютерный форум, киберфорум
C++: Сети
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 08.10.2010
Сообщений: 134

Как передать в функцию структуру в типе void и вернуть в struct

25.02.2011, 13:01. Показов 1578. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ну есть структура:
C++
1
2
3
4
5
struct STransmitCmdStruct
 {
     SOCKET Client; 
     Popen po;
 }TransmitCmdStruct;
И функция
C++
1
2
3
4
5
6
7
8
9
10
unsigned __stdcall TransmitCmd(void* TransmitCmdStruct)
 {
    string out;
        while(1)
    {
        //      out = TransmitCmdStruct.po.ReadPopen();
    //  char *charout = new char[out.size() + 1];
    //  send(Client, out.data(), strlen(out.data()) + 1, 0);
    }
 }
Объявление потока:
C++
1
    hThread = (HANDLE)_beginthreadex( NULL, 0, &TransmitCmd, (void*)&TransmitCmdStruct, 0, &threadID );
Как в функции использовать структуру? Пытался обращаться просто, говорит что это не класс и не структура
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.02.2011, 13:01
Ответы с готовыми решениями:

Передать Struct в функцию
Пишу код для stm32 Есть задача - читать и писать структуры в backUp регистры Хочу написать функцию для этих целей, но вот беда. Я не...

Как передать структуру в функцию?
Всем привет! Решил для начала сам потренироваться с простыми программами, которые приходят в голову, но возникли некоторые трудности. ...

Как передать структуру в функцию
Добрый день. Возник такой вопрос, никак не могу разобраться. Запускаю поток, он должен отработать некую функцию funk которая находится в...

1
 Аватар для Josefina
11 / 11 / 4
Регистрация: 27.09.2010
Сообщений: 32
25.02.2011, 14:31
Привести к типу TransmitCmdStruct

Например:

C++
1
2
3
4
5
6
7
8
9
10
11
unsigned __stdcall TransmitCmd(void* p_some_object)
 {
    TransmitCmdStruct *p_transmit_cmd = (TransmitCmdStruct*)p_some_object;    
    string out;
        while(1)
        {
              out = p_transmit_cmd->po.ReadPopen();
              //char *charout = new char[out.size() + 1];
              //send(Client, out.data(), strlen(out.data()) + 1, 0);
        }
 }
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.02.2011, 14:31
Помогаю со студенческими работами здесь

Как передать в функцию строку и вернуть число int
Привет всем! Надеюсь у вас все отлично. Никак мне функция не может поддаться, очень трудно. Задание такое: KOH H2O2 NaCl...

Как передать в функцию строки и вернуть строку из функции?
Добрый день! Мне нужно передать две строки функции, а потом, проведя операции над ними, вернуть одну из них. Я пробую так (printf'ом я...

Как передать двойной указатель в функцию и вернуть его
Как передать двойной указатель в функция и вернуть его? В данном случае выдает ошибку :error C2440: =: невозможно преобразовать...

Как передать указатель на структуру в функцию
Подскажите как передать указатель *arr на структуру в функцию2, чтобы в ней использовать уже заполненные массивы: void func1() ...

Как передать в функцию ссылку на структуру?
Добрый вечер, помогите пожалуйста разобраться. Нужно чтобы функция myProc принимала не структуру, а ссылку на структуру.struct vs { long...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Подключение Box2D v3 к SDL3 для Android: физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru