msg db "123", 10, 0 if(bind(...) != 0)SOCKET sListen = socket(AF_INET, SOCK_STREAM, NULL);
bind(sListen, (SOCKADDR*)&addr, sizeof(addr));
int err = WSAGetLastError();
if (err != 0) {
string code = to_string(err());
dlg->AddLog(string("Error bind: " + code).c_str());
return -1;
}if (listen(sListen, SOMAXCONN) != 0) {
string code = to_string(WSAGetLastError());
dlg->AddLog(string("Error listen: " + code).c_str());
return -1;
}Error listen: 10022 if (listen(sListen, SOMAXCONN) != 0) {
string code = to_string(WSAGetLastError());
dlg->AddLog(string("listen error. Code error: " + code).c_str());
return -1;
}listen error. Code error: 10022 #pragma pack(push, 1) - 1, а где 2, 3, 4? Я просто не совсем понимаю. Вот допустим у меня структура:int age;
bool alive;
char name[52];
char lastname[52];
Это я уже сам додумал.
В общем обрезаем всё до нужного символа, потом сохраняем один символ в al, а потом из al в eax.
К примеру, есть
str db 'abc'В
lea eax, [text+0]мы обрезаем его до 0 элемента - "abc"Далее в
mov byte al, [eax]мы из eax сохраняем только один байт в al, полчаем 'a'И возвращаем его в eax
mov byte [eax], alГотово. Мы взяли 1 символ из строки. Тем самым если вместо 0 поставим 1 то возьмём второй символ, и т.д.