Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.10.2014, 23:22   #1
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию Число в строку, как?

всем здравья!


такая вот проблема:

Есть 2 переменные, это целые числа типа WORD, например

9000 и 9004


вот мне их нужно отправить удалённому серверу через сокеты.

socket_write($u, $rec,4);


т. е. одно число это два байта. А php отправляет эти чсила как строку, т.е. 9000 отправляется аж как 4 байта, обычная строка.

А нужно отправить именно число типа WORD (2байта)

Как это сделать? Как отправить 2 числа типа WORD, т.е. 4 байта, а не строку?


Чтобы было понятнее, на принимающей стороне Windows приложение, вот код структуры которое оно принимает

Tbuff = record
U : word;
S : word;
end;
т.е. это 4 байта подряд
lollollollol вне форума Ответить с цитированием
Старый 24.10.2014, 08:30   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,179
По умолчанию

а кода php не будет, где идет присвоение переменных? Играем в телепатов?
ADSoft вне форума Ответить с цитированием
Старый 24.10.2014, 20:03   #3
lollollollol
Форумчанин
 
Регистрация: 23.03.2013
Сообщений: 218
По умолчанию

какой код то?

$rec = 9000;

но функция
socket_write($u, $rec,2);
отправит именно STRING '90' а должна отправить 2 байта, WORD 9000, ну или INTEGER, 4 байта, socket_write($u, $rec,4); но не string


Но вт как указать в каком виде отправлять я не понял.

socket_write($u, (WORD)$rec,2); тоже не канает, потом пытался через указатель
socket_write($u, &$rec,4); тож не то, дак как правильно?

Последний раз редактировалось lollollollol; 24.10.2014 в 20:11.
lollollollol вне форума Ответить с цитированием
Старый 24.10.2014, 21:20   #4
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,179
По умолчанию

дык нечего пытаться применять типы из паскаля в php .... типа WORD нет
есть integer
(int)$rec пробуйте

а по вашей функции - ну читайте мануалы
http://www.php.su/socket_write
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как преобразовать число в строку? И решить задачу... alexkgx1 Общие вопросы Delphi 7 25.11.2012 19:13
Пребразовать string-строку в число и обратно. - Как? Avaj C++ Builder 16 03.02.2011 19:03
как привести число в строку. PHP Ast Помощь студентам 0 13.01.2011 06:03
Программа Вводит символьную строку и число N и выводит строку, состоящую из первых N символов (С++) Yulai Помощь студентам 1 11.05.2009 11:39
Как вставить число в строку? nec117 Общие вопросы C/C++ 2 18.10.2008 00:41