نقل قول نوشته شده توسط mgupload مشاهده تاپیک
با سلام

من قصد دارد یه برنامه بنویسم که بخشی از اون باید یه برنامه رو با آرگمان های ورودی (فرضا به فرم a.xxx arg1 arg2) فراخوانی کنم

قطعه کدی که نوشتم به فرم زیر هست :


#include <windows.h>
#include <conio.h>
#include <iostream>
#include <string>
#include <sstream>
using namespace std;


template <typename T>
string NumberToString(T pNumber)
{
ostringstream oOStrStream;
oOStrStream << pNumber;
return oOStrStream.str();
}


string Run(int i)
{
int X,Y;
if(i == 1)
{
X = 10;
y = 10;
}
else
{
X = 0;
Y = 20;
}
return "a.xxx " + NumberToString(X) + " " + NumberToString(Y);
}


void main()
{
system(Run(1));
}


خطای زیر رو نشون میده

Could not find a match for 'system(string)'


برنامه a.xxx در کنار فایل هست. دستور فرضا به فرم a.xxx arg1 arg2 نیز از طریق ویندوز و کنسول قابل اجرا هست

این برنامه رو با Borland C++‎‎‎‎‎ Complier 5.5 نوشتم

لطفا می توانید مرا راهنمایی کنید

با تشکر
سلام
1- رشته ارسال برای اجرا اشتباه هستش.بین اسم برنامه و اولین پارامتر اون باید یک space باشه. که شما رشته ارسالی رو بدون اون فاصله ی اول ساختی.
2- a.xxx چیه دیگه ؟ xxx باید حتما پسوند فایل اجرایی سیستم عامل باشه. مثل: a.exe
نکته :
اون تابع NumberToString بیهوده هستش.این امکان رو خود runtime داره