gpt4 book ai didi

c - 将文件内容加载到结构中

转载 作者:行者123 更新时间:2023-11-30 17:49:12 27 4
gpt4 key购买 nike

我想加载代理列表,用“:”分隔符分隔每一行,然后将其加载到结构中:

struct proxy_data {
ushort type;
char *ip;
uint16_t port;
};


void load_proxies( char * proxy_file )
{
FILE * in;
struct proxy_data * temp = NULL;
if( ( in = fopen( proxy_file, "rt") ) == NULL )
{
fprintf( stderr, "\nCan't open input file!\n");
exit( 0 );
}
while( !feof( in ) )
{
temp = malloc( sizeof( struct proxy_data ) );
fscanf(in, "%s ",temp->type);
fscanf(in, "%s ",temp->ip);
fscanf(in, "%s ",temp->port);
};
fclose( in );
}

但是我在编译时遇到很多错误。

如何将每一行加载到结构中?

最佳答案

使用

struct proxy_data {
unsigned short type;
char *ip;
unsigned short port;
};

c 中没有 ushort 或 uint16。

或添加

#include <stdint.h>

在程序开始时

也不要忘记巧妙地使用 ip ,这样在将值放入其中之前分配 ip 就不会获得对未分配内存的无效引用。阅读this

关于c - 将文件内容加载到结构中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18014941/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com