"" に関する原因と対処

このコンパイルエラーの原因と対処に関して説明します。

スポンサード リンク

Microsoft Visual C++にて以下のソースでコンパイルエラーが発生します:

コンパイルエラーメッセージ:
warning C4003: マクロ 'MAKEWORD' に指定された実引数の数が少なすぎます。

ソース(バグ有り):

// ホスト名を取得するサンプルコード
#include <winsock2.h>
#include <ws2tcpip.h>
#include <windows.h>
#include <stdio.h>
int main(void)
{
//TCPを初期化する
WSADATA wsaData;
WSAStartup(MAKEWORD(2* 2), &wsaData);
char hostname[128];
lstrcpy(hostname,"");

gethostname(hostname,sizeof(hostname));
printf("ホスト名:: %s\n", hostname);
return 0; }


原因:


対処:


ソース(修正済み):

// ホスト名を取得するサンプルコード
#include <winsock2.h>
#include <ws2tcpip.h>
#include <windows.h>
#include <stdio.h>
int main(void)
{
//TCPを初期化する
WSADATA wsaData;
WSAStartup(MAKEWORD(2, 2), &wsaData);
char hostname[128];
lstrcpy(hostname,"");

gethostname(hostname,sizeof(hostname));
printf("ホスト名:: %s\n", hostname);
return 0; }

スポンサード リンク



[コンパイルエラーコード、メッセージに戻る]