在系统命令中访问c变量

Sac*_*iya 2 c system std

我想在系统命令中访问c的变量,但我不知道该怎么做我尝试如下,但这不起作用

#include<stdlib.h>
int main(){
int a=12;
system("echo $a");
}
Run Code Online (Sandbox Code Playgroud)

Fer*_*cio 7

您不能通过任何类型的字符串插值来执行此操作,例如您尝试过的.您需要做的是在将命令字符串传递给它之前构建它system().

#include <stdio.h>
#include <stdlib.h>

int main() {
    int a = 12;
    char command[100];
    sprintf(command, "echo %d", a);
    system(command);
}
Run Code Online (Sandbox Code Playgroud)