Jump to content


Photo
- - - - -

передача структуры


  • Please log in to reply
6 replies to this topic

#1 Yra^l

Yra^l

    Super True Member

  • True Members
  • PipPipPipPipPip
  • 463 posts
0
Обычный
  • Пол:Мужчина
  • Город:СПб

Posted 25 December 2008 - 20:36

Есть у меня структура, в ней указатель на другую структуру.
Нужно передать эту структуру на другую машину так, что бы передался не адрес указателя, а то на что он ссылаеться.
Записать всю информацию о структуре в буфер и передать его не вариант.

как то так ;)

Заранее всем спасибо.
  • 0

#2 PAS

PAS

    Super True Member

  • True Members
  • PipPipPipPipPip
  • 793 posts
13
Обычный
  • Пол:Мужчина
  • Город:Казакова 28/1

Posted 25 December 2008 - 21:45

Как ты передаешь саму структуру?
  • 0

#3 GlebVt

GlebVt

    нервное чучело

  • True Members
  • PipPipPipPipPip
  • 6,290 posts
69
Хороший
  • Пол:Мужчина

Posted 25 December 2008 - 22:19

struct st_inner {
	int one;
	char two;
} inner;

struct st_outter {
	int one;
	st_inner* in;
} outter;

void foo(st_outer* out, st_inner in)
{
//huita
}

int main()
{
	outter.in = &inner;
	foo(&out, *(outter.in));
	return 0;
}
мож я, правда, задачи не понял... но просто передать содержимое... что в этом такого?
  • 0

#4 Yra^l

Yra^l

    Super True Member

  • True Members
  • PipPipPipPipPip
  • 463 posts
0
Обычный
  • Пол:Мужчина
  • Город:СПб

Posted 25 December 2008 - 22:47

Задача в том и состоитчто бы не использовать
outter.in
что бы при изменение самой структуры не изменять код передачи данных.

Как ты передаешь саму структуру?

Описание структуры есть на всех машинах.

вот если так передавать

send( m_socket, (char*)&strc, sizeof(strc), 0 );

то естественно передается только указатель =(
  • 0

#5 GlebVt

GlebVt

    нервное чучело

  • True Members
  • PipPipPipPipPip
  • 6,290 posts
69
Хороший
  • Пол:Мужчина

Posted 26 December 2008 - 03:05

а если 2 раза вызвать send()? :) :)
  • 0

#6 Мяут

Мяут

    Mr. Goodcat

  • True Members
  • PipPipPipPipPip
  • 4,156 posts
67
Хороший
  • Пол:Мужчина
  • Город:Пушкин

Posted 26 December 2008 - 05:40

Есть у меня структура, в ней указатель на другую структуру.
Нужно передать эту структуру на другую машину так, что бы передался не адрес указателя, а то на что он ссылаеться.

Каков размер объекта, на который ссылаемся? Откуда принимающая мащина знает точный объем пересылаемых данных? Чем вариант с предварительным кэшированием не устраиват?

Вопросов много, ибо какую-то йухню хотите =)
  • 0

#7 GlebVt

GlebVt

    нервное чучело

  • True Members
  • PipPipPipPipPip
  • 6,290 posts
69
Хороший
  • Пол:Мужчина

Posted 26 December 2008 - 13:09

Откуда принимающая мащина знает точный объем пересылаемых данных?

Описание структуры есть на всех машинах.

Чем вариант с предварительным кэшированием не устраиват?

а вот это и правда хз :)
  • 0


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users