C语言处理procmeminfo

C语言处理procmeminfo,第1张

C语言处理/proc/meminfo

这段代码演示了如何在C语言中处理/proc/meminfo中的信息,并不难,C语言中的字符串处理函数和文件读写也很强大,可以方便的用来处理文件和字符串

static void parse_meminfo(unsigned long meminfo[MI_MAX])
{
	static const char fields[] ALIGN1 =
		"MemTotal"
		"MemFree"
		"MemShared"
		"Shmem"
		"Buffers"
		"Cached"
		"SwapTotal"
		"SwapFree"
		"Dirty"
		"Writeback"
		"AnonPages"
		"Mapped"
		"Slab";
	char buf[60]; 
	FILE *f;
	int i;

	memset(meminfo, 0, sizeof(meminfo[0]) * MI_MAX);
	f = xfopen_for_read("meminfo");
	while (fgets(buf, sizeof(buf), f) != NULL) {
		char *c = strchr(buf, ':');
		if (!c)
			continue;
		*c = '';
		i = index_in_strings(fields, buf);
		if (i >= 0)
			meminfo[i] = strtoul(c+1, NULL, 10);
	}
	fclose(f);
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/3970636.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-10-21
下一篇 2022-10-21

发表评论

登录后才能评论

评论列表(0条)

保存