我有以下功能我的函數填充字符串值
void runSysCall(char *command, char *output)
{
FILE *cmdline = popen(command, "rb");
size_t size = 0;
while(getdelim(&output, &size, 0, cmdline) != -1);
fclose(cmdline);
}
我從這個功能,什麼都我回國爲空調用它。
char * getVendorOfTheProcesses()
{
char * result = 0;
runSysCall("cat /proc/cpuinfo | grep -i 'Model'", result);
printf("%s", result);
return "asdsd";
}
如果您從函數中打印結果值,它會給出打印結果。
請任何幫助,將不勝感激。
你可能是指'getdelim(output,&size,0,cmdline)'。確保啓用所有編譯器警告。 – 2013-05-14 18:04:42
@KerrekSB - 是和否:'getdelim'需要'char **'作爲第一個參數。但'output'只是'char *'。 – Roddy 2013-05-14 21:07:16