• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

Anonym

[C++] Ajuda: Problema com variáveis (Resolvido)

6 mensagens neste tópico

Boas, então é o seguinte... Eu tenho o seguinte

cout << "Insira numero do ficheiro para abrir"

cin >> n

system(n+".mp3")

cout << "quer ficheiro?"

(...)

mas o tal system(n+".mp3") não funciona, eu cria que abrisse o ficheiro n.txt sendo n o numero inserido pelo user..  ;)

edit:

int n

e o programa anda mas aparece '.mp3' nao é reconhecido como comando batch etc... 

esquecime de uma coisa, a funcao system("") para completamente a execução do programa... e tipo eu cria algo do género, o ficheiro abria e o utilizador dizia se cria o ficheiro ou podia ser apagado, ao mesmo tempo da execução, e se fosse para ser apagado passava ao n+1.mp3 ..

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

É assim o que deves querer fazer é o seguinte (experimentei dev-c++) :

#include <cstdlib>
#include <iostream>
using namespace std;

int main(int argc, char *argv[])
{
    int n;
    char cmd[80];
    cout << "Insira numero do ficheiro para abrir"<<endl;
    cin >> n;
    sprintf(cmd, "type %.d", n);
    system( cmd );
    system("PAUSE");
    return EXIT_SUCCESS;
}

Mas esta não é a maneira correcta de abrir um ficheiro, se o quiseres manipular usando o c++.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

é assim, isso nao me parece que esteja a funcionar...

aparece sempre o sistema nao conseguiu localizar o ficheiro...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Na pasta onde estás a correr o programa, mete lá um ficheiro com o nome q pretendes abrir.

Do estilo se o numero é o 0 cria lá primeiro um ficheiro com o nome 0.txt com algum texto lá só para testares.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

' A sintaxe do comando esta incorrecta ' é o que aparece quando insiro '0' e tenho ta um 0.txt

quando insiro '1'  e tenho um ficheiro 1.txt aparece 'o sistema nao conseguiu localizar o ficheiro...

isso de por um ficheiro com o nome já eu tinha feito a minha ignorancia tb nao é tanta ;)

tb uso o Dev c++ e tenho Windows xp

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Via + 1 vez, tinha um erro no codigo não sei se reparas-te :-)

Fiz copy past da versão anterior do codigo.

O erro estava aqui:

sprintf(cmd, "type %d.txt", n);

Usa este novo codigo:

#include <cstdlib>
#include <iostream>
//#include <stdlib>
using namespace std;

int main(int argc, char *argv[])
{
    int n;
    char cmd[80];
    cout << "Insira numero do ficheiro para abrir"<<endl;
    cin >> n;
    sprintf(cmd, "type %d.txt", n);
    system( cmd );
    system("\nPAUSE");
    return EXIT_SUCCESS;
}

Esta já deve funcar.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora