接受需要字符串文字的函数中的字符。
所以我觉得我搞砸了。我在我的程序中创建了一个接受占位符的字符串文字的函数。接受需要字符串文字的函数中的字符。
foo("c");
char foo(char *bar){
//stuff
}
所以我去了对程序的其他部分的工作,当我回来的这部分问题,我需要一个单个字符从2D char数组中的地方去。我以这样的方式编写了foo函数,它必须是一个字符串。我已经尽了一切努力使其工作。请帮助...
如果我明白你问的是什么,我相信你想从char类型的char转换为一个字符串传递给foo
函数。
解决方案
char arr[2][2] = {{'0', '1'},
{'2', '3'}};
char c = arr[0][0]; // grab a char from the 2d array
char str[2] = "\0"; // gives {'\0', '\0'}
str[0] = c; // fill in the first character
foo(str);
是真棒谢谢,任何有关如何在将来避免这种情况的见解?也是char [2]被写成像java一样。这将是char str [2]; – gemini88mill
@ gemini88mill好抓,固定 – AlexPogue
你错过了'char [2] str'。该代码可以简化为char str [2] = {arr [0] [0]};' –
不会* FOO的给你单字符 'C' 里面吧? – bruceg
'foo((char []){x,'\ 0'});',其中'x'是你想要放入的另一个字符 –
顺便说一句,你的函数应该接受'char const * bar'而不是'char * bar',因为它不会修改字符串 –