作者askacis (ASKA)
看板LinuxDev
标题Re: [问题] 整数变字串
时间Thu Mar 25 16:29:37 2010
※ 引述《RiverJackson (JACK)》之铭言:
: 请问一下 我要再kernel里面
: int a=8;
: 有一个char*argv[2]={"test",a};
: 这样可以build 但是跑出来结果好像没东西
: a 理论上应该要变字串再丢进去 我本来想用sprinf去完成
: 但是kernel不支援 有人知道要用什麽方法呢
: 感谢罗~~~~
单纯就"整数变字串"这个议题而言,可以用gcc的前置处理器来转换
//需要做两层才可以转到真正的数值为字串
#define _STR(x) #x
#define STR(s) _STR(s)
#define MAJOR 1
#define MINOR 0
#define DIVIDE "."
#define MAJOR_STR STR(MAJOR)
#define MINOR_STR STR(MINOR)
#define VERSION_PREFIX "FW v"
#define FW_VERSION(a,b) (((a) << 16) + (b) )
#define FW_VERSION_CODE FW_VERSION(MAJOR,MINOR)
const char version[]=
VERSION_PREFIX MAJOR_STR DIVIDE MINOR_STR;
printf("%s\n",version); //FW v1.0
小弟通常都拿来设定版本资讯,这样可以整数与字串通吃,
一点心得分享,离题太多莫怪XD
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 219.87.142.254