我试图通过给它一个参数来创建一个调用批处理文件的程序。主要错误是我无法将值/字符串传递/发送到批处理文件。当我运行它时显示char的名称(或任何它的名称),但我希望它显示存储在该char中的字符串。 c程序的源代码是: -
#include <stdio.h>
#include <stdlib.h>
void main(char a)
{
a="hello sir";
system("batch.bat a");
}
,批处理文件的代码是: -
@echo off
SET x=
SET x=%x%%1
ECHO %x%
PAUSE
将此文件另存为batch.bat并运行c程序。 刚显示的输出&#34; a&#34;不是a的价值(&#34;你好先生&#34;) 我想让它显示&#34;你好先生&#34; 请尽快尝试并回答: - )
答案 0 :(得分:0)
尝试类似的事情:
#include <stdio.h>
#include <stdlib.h>
void main(char **arg)
{
char cmd[20]="batch.bat ";
strncat(cmd,argv[1],sizeof(cmd)-strlen(cmd)-1);
system(cmd);
}