__builtin_popcount(s)

#include <stdio.h>

//计算一个 32 位无符号整数有多少个位为1
#define popcount(s) __builtin_popcount(s)

typedef struct {
	int pid;
	int sockfd;
}mac_t;

typedef struct {
	int id;
	int fd;
	int pid;
	mac_t mac;
}cell_t;

int main()
{
	cell_t cell = {
		.id = 1234,
		.fd = 21,
		.mac.pid = 121212,
	};

	printf("%d\n", popcount(&cell));

	return 0;
}

 

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 酷酷鲨 设计师:CSDN官方博客 返回首页