во первых извиняюсь, я не понял вопроса.... если у тебя проблема с поиском, то я бы использовал приведенную мною ранее функцию вот так
| Код | #include <stdio.h> #include <string.h>
char buff[] = {10, 23, 32, 0xd2, 0x04, 0, 0, 4, 9, 0};
int mem_sub(void * src, size_t src_sz, void * dst, size_t dst_sz) { int ret = -1; for (size_t i = 0; i < src_sz - dst_sz + 1; i++) { if (!memcmp((char *)src + i, dst, dst_sz)) { ret = i; break; } } return ret; }
int main() { int value = 1234; int pos = mem_sub(buff, sizeof(buff), &value, sizeof(value)); if (pos != -1) { printf("found at %d position\n", pos); } else { printf("not found\n"); } return 0; }
|
0xd2, 0x04, 0, 0 - на х86, где младший байт по младшему адресу, это число 1234
Цитата(leporel @ 30.1.2011, 21:28 ) | | Не знаю как туда передать 8-битное число из Edit'a |
я до сих пор не могу понять, в чем твой вопрос? ты не можешь сконвертировать строку символов в число?
|