суть проблемы такая есть код следующего вида PHP: #define MRSG "\x31\xFF\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x30\x00" int main ( int argc, char **argv ) { char *parametr = ( argv[1] ); char connect[250]; strcat (connect, MRSG ); strcat (connect, parametr); return 0; } в результате объединения строк получается следующее \x31\xFF\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x30 + parametr тоесть байт x00 из строки исключается вопрос, как сделать \x31\xFF\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x30\x00 + parametr
Скопировать первую, потом ноль, потом вторую только вот в "строках" C не может быть 0, поэтому это называется не строкой, а буффером.
ок, из MRSG убрал ноль сделал так PHP: char connect[250]; strcat (connect, MRSG ); strcat (connect, "\x00" ); strcat (connect, parametr); толку нет, ноля все равно нет
Code: #define MRSG "\x31\xFF\x30\x2E\x30\x2E\x30\x2E\x30\x3A\x30\x00" ... memcpy(connect, MRSG, sizeof(MRSG)-1); memcpy(connect+sizeof(MRSG)-1, parametr, strlen(parametr)); ... memcpy находится в string.h