📄 friendlist.c
字号:
#include "friendlist.h"
struct Friend friends_list[MAX_FRIEND_COUNT];
int friends_count;
int friends_list_init()
{
friends_count = 0;
return 1;
}
int new_friend(char* nickname,unsigned long id,unsigned long ip,unsigned short port,unsigned char* key)
{
if(friends_count >= MAX_FRIEND_COUNT) return 0;
if(nickname != 0) strncpy(friends_list[friends_count].nickname,nickname,MAX_NICKNAME_LEN);
friends_list[friends_count].id = id;
friends_list[friends_count].ip = ip;
friends_list[friends_count].port = port;
if(key != 0) memcpy(friends_list[friends_count].key,key,KEY_LEN);
return ++friends_count;
}
int add_friend_online(unsigned long id,unsigned long ip,unsigned short port,unsigned char* key)
{
int i;
for(i = 0; i < friends_count; i++){
if(friends_list[i].id == id)
{
friends_list[i].ip = ip;
friends_list[i].port = port;
memcpy(friends_list[i].key,key,KEY_LEN);
}
}
if( i == friends_count )
{
return new_friend("",id,ip,port,key);
}
return 1;
}
unsigned long friends_list_query_ip(unsigned long id)
{
int i;
for(i = 0; i < friends_count; i++){
if(friends_list[i].id == id)
return friends_list[i].ip;
}
}
unsigned long friends_list_query_port(unsigned long id)
{
int i;
for(i = 0; i < friends_count; i++){
if(friends_list[i].id == id)
return friends_list[i].ip;
}
}
unsigned char* friends_list_query_key(unsigned long id)
{
int i;
for(i = 0; i < friends_count; i++) {
if(friends_list[i].id == id)
return friends_list[i].key;
}
}
int friends_list_print()
{
int i;
for(i = 0; i < friends_count; i++) {
printf("The %dth: %d %s %d\n",i,friends_list[i].id,inet_ntoa(friends_list[i].ip),friends_list[i].port);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -