本文整理汇总了C++中Error::err_display方法的典型用法代码示例。如果您正苦于以下问题:C++ Error::err_display方法的具体用法?C++ Error::err_display怎么用?C++ Error::err_display使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Error
的用法示例。
在下文中一共展示了Error::err_display方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ProcessClient
// Ŭ���̾�Ʈ�� ������ ���
DWORD WINAPI ProcessClient(LPVOID arg)
{
Error ER;
Socket_Cli SC;//����κ��� ����.. ���� ����Ʈ�� �����ٰ� �ؾ߰���?
Parser Ps;
SC.set_sock((SOCKET)arg);
int retval;
char buf[BUFSIZE + 1];
// Ŭ���̾�Ʈ ���� ���
SC.addrlen = sizeof(SC.get_sockaddr());
getpeername(SC.get_sock(), (SOCKADDR *)&SC.get_sockaddr(), &SC.addrlen);
while (1){
// ������ �ޱ�
retval = recv(SC.get_sock(), buf, BUFSIZE, 0);
if (retval == SOCKET_ERROR){
ER.err_display("recv()");
break;
}
else if (retval == 0)
break;
//accept�ϰ� �������ߴ��� ��Ŷ�� �Ƽ� �ؼ��Ѵ����� �ؾ��ϴ°Ŷ� ���⼭ ��
//�ļ����� ���ʻ��� ���� �������� ī���� �����ؼ� �ѹ��� �ش� ���� ���Ϳ� ����ϴ°͵� ����������.
//if(�ļ� ���� ������)
if (Ps.parsing_msg(buf) == 0){
SC.set_num(cli_num);
cli_info.push_back(SC);
cli_num++;
}
// ���� ������ ���
buf[retval] = '\0';
/*printf("[TCP/%s:%d] %s\n", inet_ntoa(SC.get_sockaddr().sin_addr),
ntohs(SC.get_sockaddr().sin_port), buf);*/
//���� �����Ϳ��� Ŭ�� �ѹ��κи� �����ö��� 0���״� ���Ϳ��� �˻��ؼ� ���� �������ΰ� ã�Ƽ� �� �ѹ��� ��ü�ؼ� ��ü�� �����Ѵ�
//buf[0~1]�ѹ��� 00~99 �̷������� �����ɰŶ������� �� Ŭ�� �ѹ��� ��� �־ ���� �ٲ�����°����� Ŭ�� ��ȣ�� itoa�� �̹� ���ڿ���
//�ٲ��� �������°� �װ� �ε��������� ��������ҰŰ���
int max = cli_info.size();
for (int i = 0; i < max; i++){
//getpeername(cli_info[i].get_sock(), (SOCKADDR *)&cli_info[i].get_sockaddr(), &cli_info[i].addrlen);
if (cli_info[i].get_sockaddr().sin_port == SC.get_sockaddr().sin_port){//���Ϳ� �ִ� Ŭ���� ������ Ŭ��� ������ �����ѰŸ� �ѹ� ����Ŷ����
strcpy_s(buf, Ps.re_packet_msg(buf, cli_info[i].get_num()));
}
}
// ������ ������
//������ ���� Ŭ�� ���� ��ü���� �ٽ� �����Ѵ�, ���� Ŭ�� �����ص� ���������
for (int i = 0; i < max; i++){
retval = send(cli_info[i].get_sock(), buf, retval, 0);
if (retval == SOCKET_ERROR){
ER.err_display("send()");
break;
}
}
}
// closesocket()
closesocket(SC.get_sock());
/*printf("[TCP ����] Ŭ���̾�Ʈ ����: IP �ּ�=%s, ��Ʈ ��ȣ=%d\n",
inet_ntoa(SC.get_sockaddr().sin_addr), ntohs(SC.get_sockaddr().sin_port));*/
return 0;
}