在C中将字符串从数组传递到函数指针

时间:2012-07-19 13:22:59

标签: c arrays string function

任何人都可以帮我解决我的代码无法解决的问题。我有一个我希望显示的字符串数组。一个变量,它增加和减少,并希望传递给函数的字符串。问题是我想要的整个字符串没有通过

即。 ucMainMenu = 1 MenuString [1] =“TIME”DisplayString(“TIME”)

const char MenuString[6][8] = {"UNITS", "TIME", "DATE", "PRINT", "BTOOTH", "SERVICE"};

void main
{
   ucMainMenu++; //variable changing
   DisplayString(MenuString[ucMainMenu]);  //look up variable in array pass string to function
}

void DisplayString(char *cDisplayString)
{
 //do stuff with string
}

2 个答案:

答案 0 :(得分:0)

您可以尝试使用const char *指针...

void DisplayString( const char *cDisplayString)
{
   //do stuff with string
}

答案 1 :(得分:0)

试试这个:

const char MenuString[6][8] = {"UNITS", "TIME", "DATE", "PRINT", "BTOOTH", "SERVICE"};

void DisplayString(const char *cDisplayString)
{
 //do stuff with string
    printf("%s", cDisplayString);
}

int main(int argc, char * argv[]){

    int ucMainMenu = 1;
    DisplayString(MenuString[ucMainMenu]);  //look up variable in array pass string to function

    getchar();

}

了解C here

中的初始化

希望它有所帮助!