c ++ - problemer med at få c-program til at udføre et andet program

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg er meget ny til c, men ikke til programmering, så bare med mig .. Jeg er primært interesseret i det enkle mål at få et C-program til


Jeg vil bare få et C-program til at lave

c: \ windows \ system32 \ cmd.exe/k dir
eller
c: \ windows \ system32 \ cmd.exe/k c: \ windows \ system32 \ cmd.exe/k dir


Jeg fandt en Windows C compiler .. kaldet lcc-win32


Her er koden jeg bruger, i øjeblikket stræber jeg lige mod at starte cmd.exe


#include <iostream>
#include <fstream>
using namespace std;
int main(){
    ifstream inFile;
    inFile.open("c:windowssystem32cmd.exe");
    if(!inFile){

      cout<<"Cannot open file bish."<<endl;
      system("pause");
      return 1;
      }

    system("pause");
}


Men jeg får mange fejl
cpp: c: \ cprogs \ hw2.c: 1 Kunne ikke finde inklusiv fil
cpp: c: \ cprogs \ hw2.c: 2 Kunne ikke finde inklusiv fil
og andre


Warning c:cprogshw2.c: 1  no type specified. Defaulting to int
Error c:cprogshw2.c: 1  Syntax error; missing semicolon before  `namespace'
Warning c:cprogshw2.c: 1  no type specified. Defaulting to int
Error c:cprogshw2.c: 1  Syntax error; missing semicolon before  `std'
Warning c:cprogshw2.c: 1  no type specified. Defaulting to int
Error c:cprogshw2.c: 3  undeclared identifier 'ifstream'
Warning c:cprogshw2.c: 3  Statement has no effect
Error c:cprogshw2.c: 3  Syntax error; missing semicolon before  `inFile'
Error c:cprogshw2.c: 3  undeclared identifier 'inFile'
Warning c:cprogshw2.c: 3  Statement has no effect
Error c:cprogshw2.c: 4  left operand of . has incompatible type 'int'
Error c:cprogshw2.c: 4  found 'int' expected a function
Warning c:cprogshw2.c: 4  unrecognized character escape sequence 'w' (0x486bd7)
Warning c:cprogshw2.c: 4  unrecognized character escape sequence 's' (0x486bde)
Warning c:cprogshw2.c: 4  unrecognized character escape sequence 'c' (0x486be6)
Warning c:cprogshw2.c: 4  missing prototype
Error c:cprogshw2.c: 7  undeclared identifier 'cout'
Error c:cprogshw2.c: 7  operands of << have illegal types 'int' and 'pointer to char'
Error c:cprogshw2.c: 7  undeclared identifier 'endl'
Warning c:cprogshw2.c: 7  Statement has no effect
Warning c:cprogshw2.c: 8  missing prototype for system
Warning c:cprogshw2.c: 8  Missing prototype for 'system'
Warning c:cprogshw2.c: 7  possible usage of endl before definition
Warning c:cprogshw2.c: 7  possible usage of cout before definition
Warning c:cprogshw2.c: 12  missing prototype for system
Warning c:cprogshw2.c: 12  Missing prototype for 'system'
Warning c:cprogshw2.c: 3  possible usage of inFile before definition
Warning c:cprogshw2.c: 3  possible usage of ifstream before definition
Compilation + link time:0.0 sec, Return code: 1


Jeg håber bare at have fundet nogle eksempler på nettet, som jeg kan ændre, men jeg kan ikke engang få en sådan kode til at kompilere.


--added ---


Jeg fandt nogle eksempler kode, jeg regnede med at gøre \\ 'cos jeg \' nogle erfaring programmering.


#include <stdlib.h>

int main()
{
    system("c:\windows\system32\cmd2.exe /v:on c:\windows\system32\cmd2.exe /v:on");
    return 0;
}


og det ser ud til at virke

Bedste reference


Du åbner den eksekverbare fil, og ikke udfører den. Tjek 'system' -opkaldet.

Andre referencer 1


Først og fremmest skal du undslippe dine skråstreger. "\" oversættes til en enkelt backslash.


Men fra hvad det ser ud til, behøver du slet ikke at bekymre dig over det. Jeg ser at du bruger systemkommandoen. Du behøver ikke at udføre cmd.exe overhovedet for at kunne bruge systemet. Prøv simpelthen


int main()
{
    system("pause");

    return 0;
}