我有一个接受char *的方法,但我只需要给它一个char(可以通过options[i]
访问,其中options
是char *)。有一个简单的技巧吗?
我知道我可以使用我的子串,但这似乎非常低效。我想我可以得到一个临时变量来完成这项工作,但我不喜欢这样。这是唯一的方法还是有一个简单的伎俩?
编辑:我被要求发布一些代码: 我的方法需要char *:
void quit(int errorCode, char * errorMessage, char * additionalInformation);
我使用选项char *:
for(i = 0; i < optionCounter; i++)
{
switch(options[i])
{
case 'c':
break;
case 'd':
break;
case 'e':
break;
case 'k':
break;
default:
quit(1, "No such option.", substring(options, i, 1));
break;
}
}
感谢。
答案 0 :(得分:2)
您可以构造一个局部变量,该变量包含带有单个字符的空终止字符数组和一个空终止符。
default:
char additionalInformation[] = {options[i], 0};
quit(1, "No such option.", additionalInformation);
break;
}
答案 1 :(得分:1)
char c;
char options[] = {c, 0};
foo(options);