浪子黑心 发表于 2015-3-17 12:20:02

基于TCP协议写的“hello world”程序 使用vc6编译不过。下放代码

这是基于TCP协议的客户端代码 。vc编译器显示17个错误。 看的懂 但不知道怎么解决啊。百度也木有 求大神带过。
#include <stdio.h>
#include <winsock2.h>
#pragma comment (lib,"ws2_32")

int main(int argc,char* argv[])
{
    WSADATA wsaDara;
    WSAStartup(MAKEWORD(2,2),&wsaData);

    SOKET s =socket(PE_INET,SOCK_STRESM,IPPROTO_TCP);

    sockaddr_in sockAddr;
    sockAddr.sin_family=PE_INET;
    sockAddr.sin_addr.s_un.s_addr=inet_addr("127.0.0.1");
    sockAddr.sin_port =htons(827);

    connect(s,(SOCKADDR*)&sockAddr,sizeof(SOCKADDR));

    char szBuffer={0};

    recv(s,szBuffer,MAXBYTE,NULL);

    printf("szBuffer = %s\r\n",szBuffer);

    closesocket(s);

    WSACleanup();

    return 0;
}


WATCH 发表于 2015-3-17 12:20:03

VC++6.0编译通过,有改的那一行我都加了注释了

#include <stdio.h>
#include <winsock2.h>
#pragma comment( lib,"ws2_32.lib" )

int main( int argc,char * argv[] ){
    WSADATA wsaData;        //原来是wasDara,名字问题
    WSAStartup( MAKEWORD( 2,2 ),&wsaData );        //这里原先分号错了,改成英文的分号

    SOCKET s = socket( PF_INET,SOCK_STREAM,IPPROTO_TCP );        //PF_INET/SOCK_STREAM

    sockaddr_in sockAddr;
    sockAddr.sin_family = PF_INET;        //PF_INET协议,还是名字问题
    sockAddr.sin_addr.s_addr = inet_addr( "127.0.0.1" );        //s_un
    sockAddr.sin_port = htons( 827 );

    connect( s,( SOCKADDR * )&sockAddr,sizeof( SOCKADDR ) );

    char szBuffer = { 0 };

    recv( s,szBuffer,MAXBYTE,0 );        //NULL改为0

    printf( "szBuffer = %s\r\n",szBuffer );

    closesocket( s );

    WSACleanup();

    return 0;
}

小菜学C 发表于 2015-5-4 16:16:03

:big

freeparty 发表于 2015-5-4 18:42:26

贴一下错误信息

2413780002 发表于 2015-5-28 22:22:20

帮顶

浪子黑心 发表于 2015-6-2 13:24:01

WATCH 发表于 2015-3-17 12:20
VC++6.0编译通过,有改的那一行我都加了注释了

请问一下null那一项为何该为0 书上写的null 这里看不怎么懂

本人不在 发表于 2015-6-2 22:41:16

浪子黑心 发表于 2015-6-2 13:24
请问一下null那一项为何该为0 书上写的null 这里看不怎么懂

如果头文件中有定义#define NULL 0 就可以用NULL
页: [1]
查看完整版本: 基于TCP协议写的“hello world”程序 使用vc6编译不过。下放代码