elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


  Mostrar Mensajes
Páginas: 1 ... 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21
171  Foros Generales / Foro Libre / Re: [Debate o conclusión o duda] vb.net e vb6 en: 5 Enero 2012, 17:38 pm
Creo que siempre es bueno aprender el lenguaje más nativo. El que dio origen al otro. Si no sabes las raíces estarías incompleto. Tal vez muchos no estén de acuerdo conmigo.
172  Programación / Programación C/C++ / Re: Tateti en c en: 5 Enero 2012, 17:33 pm
Ok. Ya te entendí. A nivel general los subprogramas se clasifican en Funciones y Procedimientos. En C solo existen funciones, y cuando se necesite un procedimiento, se hace uso de una función que devuelva el tipo void.
173  Programación / Programación General / ¿Dónde consigo algún compilador para el lenguaje PASCAL? en: 29 Diciembre 2011, 23:15 pm
Deseo descargar el instalador del compilador, o ide, o como se llame para practicar el lenguaje Pascal, pero para llevarlo a otra computadora que no tiene internet y allí poder instalarlo. Quisiera saber en qué sitio web lo encuentro. Muchas gracias
174  Programación / Programación C/C++ / Re: Ayuda los modos de apertura de archivos en C. en: 23 Diciembre 2011, 15:08 pm
AYUDA NUEVAMENTEEEEEEEEE!!!!

E estado leyendo el Libro Aprendiendo C en 21 días y en el modo de apertura de archivos encontré lo siguiente

"r+" : Abre el archivo para lectura y escritura. Si el archivo del nombre especificado no existe, es creado. Si el archivo existe se añaden nuevos datos al inicio del archivo, sobreescribiendo los datos existentes.

DUDA: mmm Osea que si el archivo no existe, cuando intento abrir el archivo con fopen("nombre","r+b"), se crea de todas manera un archivo y el sistema operativo me devuelve el puntero a una estructura tipo FILE para poder manipular el archivo.. Pero intenté hacer esto, y me di cuenta que no es así, que no puede abrir un archivo si no existe. [/font][/b]

En el libro de Como programar en C de Deithel:

"r+" Abrir un archivo para actualizar (Leer y escribir).. ¿En dónde?

"w+" Crea un archivo para actulizar. Si el archivo ya existe, se descarta el contenido actual Esto no es actualizar, esto es borrar y comenzar de nuevo

"a+" Agregar, abrir o crear un archivo para actualizar, la escritura se efectúa al final del archivo.

¿Cuál de los modos me recomiendan cuando quiero modificar el nombre de una persona, que se encuentra dentro de una lista de nombres en un archivo, si es que no conozco su posición en el archivo, si solo conozco su código?
175  Programación / Programación Visual Basic / ¿Cuál es el alto y ancho de una ventana maximizada? en: 21 Diciembre 2011, 18:10 pm
¿Cuál es el alto y ancho de una ventana maximizada?.
Necesito saberlo porque desde un inicio necesito trabajar en una ventana maximizada.
176  Programación / Programación C/C++ / Re: Ayuda los modos de apertura de archivos en C. en: 21 Diciembre 2011, 14:03 pm
Aunque, creo que este modo no causaría problemas si es que lo usamos netamente en archivos de acceso directo... Que ganas del profe de complicarnos la vida!!!
177  Programación / Programación C/C++ / Re: Ayuda los modos de apertura de archivos en C. en: 21 Diciembre 2011, 14:00 pm
Si pues....el profe manipula archivos secuenciales incluso usando el modo de apertura "a+". Eso me parecía raro en incorrecto, porque siendo estrictos, para archivos secuenciales se utiliza: "r", "w", "a" y para archivos de acceso directo: "r+", "w+", "a+".

Según lo que me dices, concluyo que con "a+" al abrir el archivo se sitúa al inicio. Si leo, lo hará desde el inicio, pero si escribo al hará al final. Ahora, el problema creo que surgiría si es que luego de una escritura (al final), se me ocurre leer.. donde se sitúa el cabezal de lectura?¿ Vuelve al inicio, o se sitúa en el elemento posterior a la escritura realizada anteriormente.
178  Programación / Programación C/C++ / Ayuda los modos de apertura de archivos en C. en: 21 Diciembre 2011, 03:38 am
Por más que leo miles de libros, tutoriales, videos en internet, no puedo entender del todo los modos de aperturas de archivos en C. Siempre llego a contradicciones o círculos viciosos. Aquí les pongo mis conclusiones al respecto, espero que me corrijan si estoy equivocado en algo.


Lo que quiero hacer es específicamente lo siguiente. Necesito hacer un programa que me permita almacenar en un archivo binario (trabajarlo siempre en modo secuencial), una lista de alumnos. Pero no una sola vez. Sino cada vez que abra el programa me permita, como simular la matrícula de uno, dos, tres, n..., alumnos (según lo que se necesite) de tal forma, que cada alumno tiene un código único. Si es que intento matricular un alumno con un código que ya ha sido registrado o matriculado anteriormente (osea que ya está guardado en el archivo). entonces el programa no me lo permita.

Bueno para eso, razono más o menos así. Primero, ingreso el código del nuevo alumno a matricular y lo almaceno en una variable auxiliar. Seguidamente abro el archivo en modo lectura  "rb" y empiezo a recorrer el archivo desde el principio hasta el final while!(feof(arch))  y ver si es que ya existe un código similar al q quiero agregar. SI es que no lo hay, cierro el archivo y lo vuelvo a abrir en el modo añadidura  "ab" para escribir añadir ese nuevo alumno al final de mi archivo.

Bueno, utilizando ambos modos, creo que me fue bien. Pero mi profesor utiliza el modo "a+b" para hacerlo sin necesidad de usar los dos modos anteriores que yo usé.

Según la teoría dice lo siguiente respecto al modo "a+b": " Abre el archivo para modificar (escribir/leer) al final. Si no existe el archivo, funciona igual que w+"
Duda: ¿Si es que me sitúa al final. Qué sentido tiene leer al final?, si al final no hay nada¿¿¿??..para leer tengo que estar al inicio??? Si tiene sentido escribir al final, pero leer al final???

Bueno, lo que hice fue intentar con este modo "a+b" y como arte de magia me funciona sin necesidad de usar "rb" y "wb". Pero , usando este modo, como que me mareo y no entiendo lo que ocurre con el archivo. Osea, funciona, pero no entiendo como funciona. Porque pareciera que con este modo "a+b", cuando leo, la lectura lo hace desde el el inicio al final y cuando escribio, la escritura lo hace al final sin sobreescribir datos almacenados en el archivo, como que funciona inteligentemente. Estoy en una gran duda. Ayudaaaaaaaaaaaaaa :o


Ojo, no pido que me resuelvan el programa, sino que me orienten sobre como funciona el modo de apertura "a+b" bajo cualquier circunstancia. Existe archivo, no existe, tiene elementos, no tiene. Porque la teoría que encontré en todas mis búsquedas no explican ampliamente estos modos.

Y para que vean que es verdad lo que les digo, que si he buscado información la respecto, aquí mis conclusiones sobre los modos que si he llegado a entender:

* MODO rb

Con este modo permite leer todos los elementos del archivo porque al abrirse siempre se va a

situar en el primer elemento. Si no existiera el archivo me devuelve NULL y el archivo ni se crea ni

se abre.

* MODO wb

CHANCAR, ESCRIBIR DESDE EL INICIO. Con este modo me permite escribir datos en el archivo,

mediante fwrite. Cada fwrite escribe en una posicion consecutiva a la anterior. Si ya había

anteriormente un archivo, estos son sobreescritos. Sino existe el archivo, este es creado y dejado

abierto listo para llenarlo.

* Modo ab

AÑADIR AL FINAL, NO LEER. Si no existe el archivo, entocnes lo crea y lo abre y permite escribir

datos desde el comienzo. Si es que ya existe el archivo y tiene elementos, Permite escribir datos

a partir del final, es decir, permite añadir. CONCLUSIÓN: Siempre que quiero añadir datos en un

archivo, exista o no este sin temor a perder datos si ya existiese, se usa ab. Siempre añadirá

datos la final  y si no hubiera datos, los añade desde el principio. (IDÓNEO PARA AÑADIR AL

FINAL, no leer)

* Utilizando rb y ab

Con rb, recorro el archivo (DE INICIO A FIN) para ver si algún elemento del archivo tiene el mismo

codigo que el nunevo elemento qeu quiero guardar. Si es que ya existe una rchivo con el mismo

elemento, entonces no lo añado y me salgo con "return".

Si luego de recorrer todo el archivo, veo que no hay repeticion entre un elemento guardado y el

nuevo que quieor añadir, entonces cierro el archivo dle modo lectura y lo abro en el modo ab

para añadir el nuevo dato al final y así esté guardado consecutivamente al anterior.



Y para el modo "a+b" también me hice una conclusión, pero no estoy seguro sí es la correcta, porque me funciona de una manera que como que no encaja con la teoría...Aquí mi conclusión (espero cualquier correción al respecto)

* Modo a+b

La teoría dice:
"Si el archivo no existe, permite crearlo. EL cabezal de lectura/escritura se sitúa al final de

fichero".
"Abre el archivo para modificar. (Escribir y leer) al final. Si no existe el archivo, funciona con w+"
Pero según lo que He practicado. Funciona como una mezcla de rb y ab. Osea que me permite

leer el archivo desde un principio y permite añadir datos al final (o desde un inicio si está vacío).

Idóneo para llenar una archivo con elementos únicos, por ejemplo, que cada elemento tenga un código o un número que lo identifique único como número de identificación, etc.




179  Media / Diseño Gráfico / Ayuda para guardar una imagen en 215 x 147 en: 20 Diciembre 2011, 23:41 pm
Hola a todos. Necesito saber si es que en Paint o en algún otro programa puedo guardar una imagen pero con las dimensiones exactas 215 x 147. Gracias
180  Foros Generales / Foro Libre / Re: ¿Pregunta personal a los usuarios? en: 8 Diciembre 2011, 19:55 pm
Que bueno, no sé porqué pensé que la gente metida en estas cosas tienen menos de 15 años...Pero veo que están por la base 20 en adelante
Páginas: 1 ... 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [18] 19 20 21
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines