使用变量内部引号?

时间:2017-02-02 16:34:53

标签: c linux

所以我只有一个简单的问题。如何在引号内使用变量? 例如

number =1
system (sudo asterisk -rx "pjsip show aor [number]")

提前谢谢

1 个答案:

答案 0 :(得分:3)

这不是一个简单的问题:您需要在运行时在内存中构造字符串,例如,使用sprintf

char command[100];
int number = 1;
sprintf(command, "sudo asterisk -rx \"pjsip show aor [%d]\"", number);
system(command);

上面的代码将命令(包括转换为十进制的number的值)写入名为char[]的{​​{1}}缓冲区中,并将此命令传递给command以执行