一些有用的c++编程片段

来源:互联网 发布:淘宝f 22猛禽战斗机 编辑:程序博客网 时间:2024/04/19 17:25

一、tokenizer,通常用于解析传入的参数

typedef boost::tokenizer<boost::char_separator<char> > tokenizer;
boost::char_separator<char> sep(",");
tokenizer tok(test_uins, sep);
for(tokenizer::iterator tok_iter = tok.begin(); tok_iter != tok.end(); ++tok_iter)
{
int64_t uin = boost::lexical_cast<int64_t>(*tok_iter); 
v_test_uins.push_back(uin);
}

二、 字符串转换成10进制或者16进制的数字

       strtoul(string.c_str(), NULL, 16)

      或者使用boost::lexical_cast

三、 数字转化为字符串

       snprintf(buf, sizeof(buf), "%d", int)

或者 atoi

四、 创建一个目录,如果已经存在则不报错

if(mkdir(str_dir, 0755)) {
if(errno != EEXIST) {
LOG_ERROR("failed to make dir %s", str_dir);
return -1;
}
}

五、ip地址转化函数

inet_addr("1.1.1.1")返回网络序, inet_network("1.1.1.1")返回主机序,inet_aton("1.1.1.1")可以处理255.255.255.255这种ip地址并返回网络序ip地址

inet_ntoa(struct in_addr xxx)


0 0
原创粉丝点击