• Viernes 8 de Noviembre de 2024, 16:47

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - tiwanacote

Páginas: [1]
1
C/C++ / Re:Como leer un archivo binario
« en: Jueves 21 de Julio de 2011, 02:11 »
I . M . P . R . E . S . I . O . N . A . N . T . E .   Amigo! Estuve horas volviendome loco, muchas gracias de verdad! :jumpie:

2
C/C++ / Como leer un archivo binario
« en: Miércoles 20 de Julio de 2011, 03:43 »
Hola Gente, soy novato en esto y quiero saber que debería probar o modificar de mi código para poder leer un archivo binario sin que me aparezcan signos raros... ¿Que estoy haciendo mal?

¿Como podría visualizar la data en pantalla en binario o mejor en hexadecimal?

Muchas gracias

Código: C++
  1. #include <fstream>
  2. #include <iostream>
  3.  
  4.  
  5. int main()
  6. {
  7.     using namespace std;
  8.     ifstream archivo("b12.bmp", ios::binary);
  9.     char linea[128];
  10.     long contador = 0L;
  11.  
  12.     if(archivo.fail())
  13.     cout << "Error al abrir el archivo Besos.txt" << endl;
  14.     else
  15.     while(!archivo.eof())
  16.     {
  17.         archivo.getline(linea, sizeof(linea));
  18.  
  19.         cout << linea << endl;
  20.         if((++contador % 24)==0)
  21.         {
  22.             cout << "CONTINUA...";
  23.             cin.get();
  24.         }
  25.     }
  26.     archivo.close();
  27.     return 0;
  28. }

3
C/C++ / Re: Atof hace cosas distintas!!! ¿Cual es el problema?
« en: Jueves 16 de Junio de 2011, 02:00 »
Muchas gracias!!!!!
Probare!

4
C/C++ / Re: Atof hace cosas distintas!!! ¿Cual es el problema?
« en: Miércoles 15 de Junio de 2011, 04:54 »
Antes que nada gracias por la atención!

Lo que no entiendo es porque si yo defino la variable "numero" como DOUBLE en donde podría representar hasta 15 dígitos, cuando convierto 7 dígitos con "atof" y uso "setpresicon(20)  para imprimir el resultado, obtengo basura en el dígito 8,9,10... Se puede observar en el tercer numero..

Gracias!

5
C/C++ / Atof hace cosas distintas!!! ¿Cual es el problema?
« en: Jueves 9 de Junio de 2011, 00:48 »
Gente, soy nuevo en esto y estoy probando con el comando atof para convertir cadena tipo C a double

El tema que que tengo es que hace cosas distintas según como cargue la cadena (mete basura)

En el siguiente programa aplico atof a tres cadenas distintas: numero1, numero2, y numero3. Finalmente imprime en pantalla los numeros cargados mas otros inesperados. Ademas hago una resta para verificar si aunque sea la variable la convierte bien, y lo logra.

La pregunta es ¿Porque imprime basura? ¿Que hago mal? Lo corri con dos compiladores distintos y ocurre lo mismo

(En este programa se que meto librerias que no van...pero no importa)
Saludos!
Maxi

Código: C++
  1.  
  2.  
  3. #include <fstream>
  4. #include <iostream>
  5. #include <cstdlib>
  6. #include <string>
  7. #include <iomanip>
  8.  
  9.  
  10.  
  11.  
  12. int main()
  13. {
  14.     using namespace std;
  15.  
  16.     cout.setf(ios::fixed);
  17.     cout.setf(ios::showpoint);
  18.  
  19.     double numero_salida = 0;
  20.   
  21. // PRIMER NUMERO
  22.     char numero1[] = "123.45678900000000000000";
  23.     numero_salida = atof(numero1);  // Convierto char a double
  24.  
  25.  
  26.     cout << endl;
  27.     cout << "El numero 1 convertido es:" << endl;
  28.     cout << "--------------------------" << endl;
  29.     cout << setprecision(20) << numero_salida << endl;
  30.     // con lo que sigue se muestra que por mas que aparezca basura la variable esta bien cargada
  31.     cout << "  " <<  setprecision(20) << numero_salida - 123.456789 << endl;;
  32.     cout << endl;
  33.     cout << endl;
  34.  
  35.  
  36.  
  37. // SEGUNDO NUMERO
  38.  
  39.     char numero2[] = "12.45678900000000000000";
  40.     numero_salida = atof(numero2);
  41.  
  42.     cout << endl;
  43.     cout << "El numero 2 convertido es:" << endl;
  44.     cout << "--------------------------" << endl;
  45.     cout << setprecision(20) << numero_salida << endl;
  46.     // con lo que sigue se muestra que por mas que aparezca basura la variable esta bien cargada
  47.     cout << " " <<  setprecision(20) << numero_salida - 12.456789 << endl;;
  48.     cout << endl;
  49.     cout << endl;
  50.  
  51.  
  52.  
  53. // TERCER NUMERO
  54.  
  55.     char numero3[] = "1.45678900000000000000";
  56.     numero_salida = atof(numero3);
  57.  
  58.     cout << endl;
  59.     cout << "El numero 3 convertido es:" << endl;
  60.     cout << "--------------------------" << endl;
  61.     cout << setprecision(20) << numero_salida << endl;
  62.     // con lo que sigue se muestra que por mas que aparezca basura la variable esta bien cargada
  63.     cout << setprecision(20) << numero_salida - 1.456789;
  64.     cout << endl;
  65.     cout << endl;
  66.  
  67.  
  68.     return (0);
  69.  
  70. }
  71.  
  72.  
  73.  
  74.  

6
C/C++ / Re: Manejo de memoria con arreglos dinamicos
« en: Sábado 4 de Junio de 2011, 00:16 »
Amigo, estoy utilizando NEW correctamente y es cierto que son muchisimos puntos....

Sobre que debería leer o que comandos debería estudiar para liberar memoria o saber cuanta me quedad?

Gracias!

7
C/C++ / Manejo de memoria con arreglos dinamicos
« en: Jueves 2 de Junio de 2011, 01:13 »
Gente, soy bastante nuevo en esto y me encuentro con un problema.

Tengo un archivo de texto "puntos.txt" del cual leo coordenadas de distintos puntos (ejemplo   2.43  ; 10.0087  ;   7.54366 ) y los cargo en un arreglo dinámico bidimensional double de 3 x n   (donde n es la cantidad de puntos)

Todo anda perfecto hasta que leo archivos de muchos puntos... evidentemente me quedo sin memoria, dado que cuando leo pocos el programa termina perfecto y cuando leo muchos se cuelga tirando el clásico error de windows "Se ha producido un error este programa debe cerrarse".

¿Que debo hacer? ¿Que debería comenzar a explorar? ¿Algo para recomendar? ¿Debo manejar la Cache o estoy diciendo cualquier cosa ?

Agradecería la ayuda!!!
Saludos!

8
C/C++ / Re: Como escribir en el principio de un archivo ya escrito
« en: Viernes 20 de Mayo de 2011, 22:24 »
Muchas gracias por el dato!!! Lo busque en la web y funcionó!!!!


Código: C++
  1. // position of put pointer
  2. #include <fstream>
  3. using namespace std;
  4.  
  5. int main () {
  6.  
  7.  
  8.   ofstream outfile;
  9.   outfile.open ("test.txt");
  10.   outfile << endl;      // Dejo un espacio al principio (Quiza no sea necesario)
  11.   outfile.write ("This is an apple",16);    // Escribe
  12.   pos=outfile.tellp();  // NO LO USE PERO ES MUY UTIL: Da la posición en la que quedó en el archivo
  13.   outfile.seekp (0);  // Voy a la posición cero...
  14.   outfile.write (" sam",4);  // ...y escribo esto
  15.   outfile << endl;
  16.  
  17.   outfile.close();
  18.  
  19.   return 0;
  20. }
  21.  

9
C/C++ / Como escribir en el principio de un archivo ya escrito
« en: Viernes 20 de Mayo de 2011, 03:04 »
Estimada gente, soy nuevo en esto y estoy buscando escribir al principio en un archivo .txt y no encuentro como hacerlo.
Explicando en detalle, debo escribo muchas cosas y cuando llego al final del programa debo escribir algo al principio y finalmente cerrar el flujo de salida.

Este sería un código simplificado, espero no olvidarme ninguna sentencia:
Gracias!!!!

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

int main()
{

ofstream archivo_de_escritura;
archivo_de_escritura.open("salida.txt", ios::app);

archivo_de_salida << " Esto es una prueba 1 " << "n";
archivo_de_salida << " Esto es una prueba 2 " << "n";

ACÁ QUIERO REBOBINAR Y ESCRIBIR ESTO AL PRINCIPIO

archivo_de_salida << " Este es el principio" << "n";

archivo_de_escritura.close;

return (0);
}

10
C/C++ / Re: Como escribir en un archivo desde una función - C++
« en: Jueves 5 de Mayo de 2011, 22:56 »
Muchisimas gracias!!! Has estado muy claro en la explicación! Funcionó perfecto!

Saludos! :D

11
C/C++ / Como escribir en un archivo desde una función - C++
« en: Jueves 5 de Mayo de 2011, 04:42 »
Estimada gente, soy bastante nuevo en el tema y pido una ayuda para resolver este tema.


 Dentro de "main" defino una variable de flujo llamada "archivo" que conecta a "prueba.txt" , luego, lo que no me sale, es escribir desde una función llamada "escribir" en el archivo "prueba.txt"

Como errores me pone:


14|error: 'ofstream' has not been declared|
51|error: 'ofstream' has not been declared|
|In function 'void escribir(double, int)':|
55|error: invalid operands of types 'int' and 'const char [27]' to binary 'operator<<'|
||=== Build finished: 3 errors, 0 warnings ===|

El código simplificado que armé para explicarme es el siguiente:


#include <iostream>
#include <fstream>    

void escribir (double entrada);

int main()
{
    using namespace std;
    ofstream archivo;  
    archivo.open("prueba.txt", ios::app);

    double entrada;

    cout << "Ingrese el numero de entrada a escribir en el archivo" << endl;
    cin >> entrada;

    archivo << "Eso fue todo lo que escribimos en el archivo";

    archivo.close();   // Cierra el archivo de salida en donde aparecen todos los puntos.

    return(0);
}


void escribir (double entrada)
{
    using namespace std;
    double a = entrada;
    archivo << "El numero que escribo en el archivo es: " << a;
    cout << "No hay mas datos para escribir " << endl;
}

Muchas gracias!!

Páginas: [1]