Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [C++] Aiuto sintassi del comando errata!

    Ciao a tutti, sto facendo un gioco in ambiente DOS e sono arrivato ad un punto dove, nella compilazione va tutto bene, ma quando vado ad eseguire il programma mi esce il messaggio "Sintassi del comando errata" 2 volte, poi il programma continua ma non fa quello che volevo che facesse. Non capisco proprio cosa possa essere!
    Ecco il codice:

    codice:
    /*
    	FILE		MyEarth.cpp
    	PROGETTO	MyEarth - versione demo
    */
    
    // Direttive
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    #include <iostream.h>
    #include "animazione.h"
    #define PRESENTAZIONE "\n\t MyEarth\n\t Crea e gestisci il tuo mondo!"
    
    char *GiaAperto;
    
    // Prototipi di funzione
    void Presentazione(void);
    void SeGiaAperto(void);
    void MenuNuovaCarica(void);
    void NuovaPartita(void);
    void CaricaPartita(void);
    
    // Inizio programma
    int main(int argc, char argv[])
    {
    	// Inizializzazioni
    	FILE *fo;
        system("ren MyEarth\var_glo.syslist var_glo.txt");
        fo = fopen("MyEarth\var_glo.txt", "r");
        char arrayfile[50];
        fgets( arrayfile, 2, fo);
        GiaAperto = arrayfile;
        fclose(fo);
    	system("ren MyEarth\var_glo.txt var_glo.syslist");
        //Programma
        system("title MyEarth - Versione Demo");
        system("color f0");
        Presentazione();
        SeGiaAperto();
    	system("pause>nul");
    	return 0;
    }
    
    // Funzioni
    void Presentazione(void)
    {
        cout << PRESENTAZIONE << "\n\n ";
    }
    
    void SeGiaAperto(void)
    {
    	if(GiaAperto == "0")
    	{
    		MenuNuovaCarica();
    	} else
    	{
    		NuovaPartita();
    	}
    }
    
    void MenuNuovaCarica(void)
    {
    	system("cls");
    	Presentazione();
    	cout << "\n\n ";
    	cout << "[1] Nuova Partita\n ";
    	cout << "[2] Carica Partita\n\n ";
    	int inputmenu;
    	scanf("%d", &inputmenu);
    	switch(inputmenu)
    	{
    		case 1:
    		NuovaPartita();
    		break;
    		case 2:
    		CaricaPartita();
    		break;
    		default:
    		cout << "Il tasto premuto non corrisponde a nessuna voce del menù!";
    		MenuNuovaCarica();
    	}
    }
    
    void NuovaPartita(void)
    {
    	system("cls");
    	Presentazione();
    	cout << "Azione non disponibile.";
    }
    
    void CaricaPartita(void)
    {
    	system("cls");
    	Presentazione();
    	cout << "Azione non disponibile.";
    }
    Se avete una minima idea di quello che ostacola il corretto funzionamento del mio programma, vi prego di aiutarmi. Grazie!

  2. #2

    Re: [C++] Aiuto sintassi del comando errata!

    Originariamente inviato da nellobond14
    Ciao a tutti, sto facendo un gioco in ambiente DOS e sono arrivato ad un punto dove, nella compilazione va tutto bene, ma quando vado ad eseguire il programma mi esce il messaggio "Sintassi del comando errata" 2 volte
    Hai eseguito il programma passo passo per capire quale istruzione causa il messaggio? Quasi sicuramente è una di quelle system che usi, probabilmente le due chiamate iniziali che rinominano il file (e di cui, tra l'altro, non capisco l'utilità). Controlla bene anche tutto il resto già che ci sei...

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2006
    Messaggi
    156
    se non ricordo male il carattere \ necessita escaping ( \\ ).
    prova a sostituire i vari \ (nelle system e nella open) con \\

  4. #4

    Grazie!

    Grazie a tutti e due! L'errore l'ho capito da solo ma mi siete stati utili tutti e due comunque! Ho capito che non serviva rinominare per forza il file da aprire, e ho capito che si doveva usare l'escape. Grazie mille comunque!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.