Necesito ayuda C++ | fOpen y variables String

Iniciado por zikotik, 1 Diciembre 2012, 18:39 PM

0 Miembros y 1 Visitante están viendo este tema.

zikotik

Hola gente, me he mudado de Visual Basic al C++ hace muy poco tiempo.

Como primer idea, quise hacer una pequeña aplicación que me creara un archivo .txt con el contenido de una variable.

Ejemplo, la variable "istr" era equivalente a "Texto 123", entonces la aplicación creaba el archivo "archivo.txt" con el contenido de la variable "istr".

El problema está en que cuando hago fprintf, no me toma la variable.
Revisé montón de veces mi código, me fijé en otros foros, e inclusive intenté con la variable char, pero no hubo caso.

Aquí les dejo mi código y espero que alguno me dar una mano con ello.
Les agradezco la ayuda de antemano.

#include <iostream>
#include <string>
#include <stdio.h>
#include <conio.h>

using namespace std;

FILE *doc

int main()
{
    string txt;
    txt = "Texto 123";

    doc = fopen("archivo.txt", "a+");
    fprintf(doc, "%s", txt);
    flocse(doc);

    getch();
    return 0;
}

zikotik

#1
Gente, ya he resuelto mi duda...

Primero que nada, puse librerías de más, y segundo, encontré una página donde explicaba algo sobre la variable char que no sabía y que además no había visto antes en otros tutoriales.

El código me quedó así...

#include <iostream>
#include <conio.h>

using namespace std;

FILE *doc

int main()
{
   char txt[] = "Texto 123";

   doc = fopen("archivo.txt", "a+");
   fprintf(doc, "%s", txt);
   flocse(doc);

   getch();
   return 0;
}


Lo que yo no sabía era que poniendo "[]" luego de la variable tipo char, se podían poner cadenas de texto. Pensé que servía únicamente para caracteres simples.

durasno

Hola! nose mucho de C++, pero de la segunda forma lo estas haciendo en C puro, tendrias q usar funciones de C++

http://www.nebrija.es/~abustind/Informatica/MetodologiaI/Archivos.pdf


Saludos
Ahorrate una pregunta, lee el man

zikotik

Ah gracias por la data del pdf ;)

Lo estuve leyendo y me sirvió bastante.