|
5啊哈币
为什么编译器说printf没定义,不是加了stdio.h,求高手解答
代码:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <stdafx.h>
#include <winsock2.h>
void ShowError()
{
TCHAR *lpMsgBuf;
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER|
FORMAT_MESSAGE_FROM_SYSTEM,
NULL,GetLastError(),
MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT),
(LPTSTR)&lpMsgBuf,0,NULL);
MessageBox(NULL,lpMsgBuf,"",MB_ICONERROR);
}
void SocketTest()
{
WSADATA wsaData;
WSAStartup(MAKEWORD(2,0),&wsaData);
SOCKET sock = socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);
SOCKADDR_IN sa;
sa.sin_family = AF_INET;
sa.sin_port = htons(IPPORT_SMTP);
sa.sin_addr.S_un.S_addr = inet_addr("220.181.12.13");
if(connect(sock,(SOCKADDR*)&sa,sizeof(sa))==SOCKET_ERROR)
{
ShowError();
return;
}
char buffer[256];
ZeroMemory(buffer,sizeof(buffer)/sizeof(TCHAR));
recv(sock,buffer,sizeof(buffer)/sizeof(TCHAR),0);
printf("%s\n",buffer); //printf("%d\n",c);
TCHAR SEND1[] = "QUIT\n";
send(sock,SEND1,sizeof(SEND1)/sizeof(TCHAR),0);
ZeroMemory(buffer,sizeof(buffer)/sizeof(TCHAR));
recv(sock,buffer,sizeof(buffer)/sizeof(TCHAR),0);
printf("%s\n",buffer);
closesocket(sock);
WSACleanup();
}
int main(void)
{
SocketTest();
system("pause");
return 0;
}
错误信息:
--------------------Configuration: mail移植版 - Win32 Debug--------------------
Compiling...
mail移植版.cpp
C:\Program Files (x86)\Microsoft Visual Studio\MyProjects\mail移植版\mail移植版.cpp(33) : error C2065: 'printf' : undeclared identifier
执行 cl.exe 时出错.
mail移植版.exe - 1 error(s), 0 warning(s)
用的vc6.0
|
|