哪种方法效率更高或更可读

哪种方法效率更高或更可读

来由:阅读lighttpd源码时,发现lighttpd申请特定倍数内存时,使用的方法较为晦涩,于是,就想对比自己以前在阅读git源码时学到的方法,感觉git的方法更胜一筹 lighttpd方法:

#define BUFFER_PIECE_SIZE 64 int get_entry_size(int size) { int ret_size = size; if(size <= 0) return 0; ret_size += BUFFER_PIECE_SIZE - (b->size % BUFFER_PIECE_SIZE); return ret_size; }

git方法

#define BUFFER_PIECE_SIZE 64 int get_entry_size(int size) { if(size <= 0) return 0; return ((size + BUFFER_PIECE_SIZE - 1) & ~(BUFFER_PIECE_SIZE - 1)); }