setsockopt나 ioctlsocket 같은 함수에서 인자를 그리 받잖아요?
"₩01₩00₩00₩00"
이렇게 보내야 맞는건가여
"₩01₩00₩00"
이렇게 보내야 맞는건가여
역슬래시 필터링돼서 저걸로 적음..
₩x가 뭐하는 역할인지 몰라서 그런데 아시는분 설명해주시면 감사하겠슴
특수문자라 구글링이 힘들어서
"₩01₩00₩00₩00"
이렇게 보내야 맞는건가여
"₩01₩00₩00"
이렇게 보내야 맞는건가여
역슬래시 필터링돼서 저걸로 적음..
₩x가 뭐하는 역할인지 몰라서 그런데 아시는분 설명해주시면 감사하겠슴
특수문자라 구글링이 힘들어서
저걸 인자로 받아서 그래 string 을 인자로 받아서
특수문자 단위로 자르는거여
그래서 어레이에 쳐넣고
어레이 첫번째는 뭐 상대방 아이피
두번째는 뭐 상대방 아이디
세번째는 뭐 대화내용
이런거임
그 특수문자가 구분을 해주는 거지 클라이언트에선 한 패킷에 담아야 하니까 걍 스트링으로 서버에 보내는거고 서버는 그걸 의미잇게 잘라서 해석해야하는거지
근데 그 구분 짓는 단어가 ( ) 이렇게 괄호같은거 쓰면 채팅할때 ( ) 들어같걸 서버가 오인할수있어서 잘 안쓰는 단어로 구분하다보니 특수문자가 나오는거지
틀라이언트에선 저 특수문자를 사용자가 임의로 못치게끔 예외처리 해줘야 하고
이해갔냐
??제가 물어본건 그게아닌데
역슬래시x요
₩x가 뭐하는 역할인지 몰라서 그런데 아시는분 설명해주시면 감사하겠슴 <--- 이거 물어본거 아님?
예를 들면
상대방아이피₩x상대방아이디₩x대화내용₩x전송시간₩x 이렇게 보낸걸 어레이로 받아서 다시 각각 변수에 쳐넣어서 쓸려고 하는 구분자 개념이라고
₩x 이게 니가 하기 나름임 뭐 예제에서는 ₩x 이걸로 썼겟지만
₩x 로 잘라서 넣으면 되니까
그게 아니고 C에서의 \x염..
₩x
그리고 그건 번외로 물어본거구 원래 질문은 위에 말한 함수들 인자로 변수 만들지 않고 바로 전달할때 3개를 쓰는건지 4개를 쓰는건지 물어본거예욤
글고 잘 모르지만 \x는 C 문자열에서 hex값 그대로 넣는걸로 아는데
₩x
"123₩x45"는 31 32 33 45로 들가잖아염
16진수 표기 물어보는거임?
그니까 setsockopt(s, IPPROTO_TCP, TCP_NODELAY, "₩x01₩x00₩x00", 4);
16진수를 인자로 함수 호출할려는데
이런 코드가 있으면 3번째 인자가 저게 맞는건지 아니면 "₩x01₩x00₩x00₩x00"이 맞는건지요
전자가맞겠죠?4바이트니
16진수 인자로 넣을땐
0x01 이렇게 불러야지
저건 걍 함수 호출할때 이렇게 해라~ 하는거고
? 이해가 안가네요
전자가 맞다고 치고..왜 똒같이 포인터 받는 함수인데 setsockopt같은건 저렇게 전달해도 잘 되고
char buf[128];GetUserName(buf, "₩x80₩x00₩x00"); printf("%s", buf);
이런코드는 안되는걸까요
되는지 안되는지는 함수마다 다르니 직접 돌려보고 잘 돌아가야만 써야되는건가..
GetUserName 함수가 어케 생겼는지는 몰겠다만
본인이 자문 자답 했네