?? bitfield.h
字號:
#ifndef BITFIELD_H
#define BITFIELD_H
typedef struct _Bitmap {
unsigned char *bitfield; // 保存位圖
int bitfield_length; // 位圖所占的總字節數
int valid_length; // 位圖有效的總位數,每一位代表一個piece
} Bitmap;
int create_bitfield(); // 創建位圖,分配內存并進行初始化
int get_bit_value(Bitmap *bitmap,int index); // 獲取某一位的值
int set_bit_value(Bitmap *bitmap,int index,
unsigned char value); // 設置某一位的值
int all_zero(Bitmap *bitmap); // 全部清零
int all_set(Bitmap *bitmap); // 全部設置為1
void release_memory_in_bitfield(); // 釋放bitfield.c中動態分配的內存
int print_bitfield(Bitmap *bitmap); // 打印位圖值,用于調試
int restore_bitmap(); // 將位圖存儲到文件中
// 在下次下載時,先讀取該文件獲取已經下載的進度
int is_interested(Bitmap *dst,Bitmap *src); // 擁有位圖src的peer是否對擁有
// dst位圖的peer感興趣
int get_download_piece_num(); // 獲取當前已下載到的總piece數
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -