标题:lpvoid类型移植linux问题
只看楼主
lyl930130
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
结帖率:91.43%
 问题点数:0 回复次数:1 
lpvoid类型移植linux问题
程序代码:
#define WINDOWS
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
#include<ctype.h>
#ifdef WINDOWS
#include<WinSock2.h>
#include<WS2tcpip.h>
#pragma comment(lib, "WS2_32.lib")
#else
#include<arpa/inet.h>
#include<netinet/in.h>
#include<sys/types.h>
#endif

typedef struct NextData
{
    int Sque;
    LPVOID Next;
}NextData, *p_NextData;

typedef struct TestData
{
    int Begin;
    p_NextData End;
}TestData, *p_TextData;

int main()
{
    int i,j;
    TestData data[10];
    p_NextData next,temp;

    for(i=0;i<10;i++)
    {
        data[i].Begin = i;
        data[i].End = (p_NextData)malloc(sizeof(NextData));
        next = data[i].End;
        for(j=0;j<3;j++)
        {
            next->Sque = i+j*2;
            next->Next = (p_NextData)malloc(sizeof(NextData));
            next = (p_NextData)next->Next;
        }
    }

    for(i=0;i<10;i++)
    {
        printf("%d:",data[i].Begin);
        next = data[i].End;
        for(j=0;j<3;j++)
        {
            printf("%d  ",next->Sque);
            next = (p_NextData)next->Next;
        }
        printf("\n");
    }

    for(i=0;i<10;i++)
    {
        temp = (p_NextData)data[i].End->Next;
        free(data[i].End);
        for(j=0;j<3;j++)
        {
            next = temp;
            temp = (p_NextData)temp->Next;
            free(next);
        }
    }

    system("pause");
    return 0;
}
在windows下程序能运行,但是在linux下,提示
expected specifier-qualifier-list before 'LPVOID'
'struct NextData'没有名为'Next'的成员

不知道怎么移植过去。
搜索更多相关主题的帖子: include End Next data for 
2017-07-18 23:16
lyl930130
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:323
专家分:111
注 册:2013-5-13
得分:0 
靠,改成void *就可以了。。。逗比了。。。
2017-07-19 08:22



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-479476-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.170466 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved