将数组中的数据附加到C中的char变量

时间:2016-03-09 23:20:41

标签: c

我有一个正在编写的程序,我需要在配置文件中读取。如果你不能通过它的编写方式来判断它是另一个程序的占位符,它会在其内存空间中打开第二个程序。我有readline函数全部设置,但我的“主”操作只支持参数的变量(除非我不正确),像这样:“arg1 arg2 arg3 ...”我在网上看到像'strcat'的东西和其他人一样,但由于我不熟悉C,这些似乎只添加了一个字符。我需要的解决方案是:

char args[ 10 ];
FILE *fp=fopen("file.cfg","r");

void readLine(FILE* file, char* line, int limit)
{
    int i;
    int read;

    read = fread(line, sizeof(char), limit, file);
    line[read] = '\0';

    for(i = 0; i <= read;i++)
    {
        if('\0' == line[i] || '\n' == line[i] || '\r' == line[i])
        {
            line[i] = '\0';
            break;
        }
    }

    if(i != read)
    {
        fseek(file, i - read + 1, SEEK_CUR);
    }
}

int main(void)
{
    _spawnl( P_OVERLAY, "prog1.exe", "prog1.exe", args, NULL );
    return 0;
}

'int main(void)'中的'args'变量需要是= line [i]的变量。 除非完全重写是不必要的。

另外b4你激怒我,我不想在主循环,因为这个程序只是调用另一个,然后死。一个循环可能会使它调用同一个程序的无限数量,而且......那将是不好的。提前谢谢!

0 个答案:

没有答案