小编Naz*_*Naz的帖子

在C中传递参数

看看这个方法:

void* matmult (void*)
Run Code Online (Sandbox Code Playgroud)

什么(void*)意思?我知道该函数返回一个指向任何数据类型的指针.但是这个论点被传递了什么?为什么没有传递参数名称?

c

3
推荐指数
1
解决办法
209
查看次数

返回一个指针数组,返回类型?

我有一个功能..

char ** getCommand()
{ 
    char *commandArray[BUFSIZ]; //declaring an array of char pointers
    // i m doing things to array

    return commandArray;
}
Run Code Online (Sandbox Code Playgroud)

我收到一个错误说"冲突的类型".commandArray的类型是什么?它指向指针对吗?

我尝试了char*getcommand()......也没用.我在main中调用这个函数所以我已经delcared ..

main()
{
    char *commands;

    commands = getCommand();  //this didn't work 

    // So I redeclared...
    char *commands[BUFSIZ];

    commands = getCommand();  //this didn't work either.
}
Run Code Online (Sandbox Code Playgroud)

这是怎么回事?我之前从未使用过指针数组......有人简化了问题...并给我一些提示......

编辑

好的,谢谢你的建议......没有用......

我正在粘贴代码...建议的更改反映..遇到相同的错误,说getCommand有冲突的错误类型.

char **getCommand()
{
    int command_num;
    char input[BUFSIZ];
    char **commandArray;

    command_num = 0;
    commandArray = (char**) malloc (BUFSIZ * sizeof(char));

    fgets(input,sizeof(input),stdin);
    commandArray[command_num] = strtok(input, " "); /*breaks …
Run Code Online (Sandbox Code Playgroud)

c arrays pointers char

2
推荐指数
1
解决办法
1万
查看次数

标签 统计

c ×2

arrays ×1

char ×1

pointers ×1