| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Touchsoftwares Master


Registrado: 16 Dic 2002Mensajes: 869Ubicación: MEXICO Playa del Carmen
|
Publicado: Mie 29 Oct, 2003 6:22 am Asunto: La maravilla de las Estructuras |
|
|
Algo tan simple que va en los primeros capitulos de cualquier libro de c o c++, las estructuras, muchas veces nos olvidamos de ellas en la progrmacionde sistemas administrativos, dejando todo en variales locales y/o accesos ¡director a los campos de las tablas.
Quisiera compartir con ustedes y recodar el uso de las estructuras para un rudimentario controlde derechos de usuarios:
Primero defino en mi forma principal la sig estructura:
| Código: |
struc sDerechos
{
bool Menu1;
bool Menu2;
bool Menu3;
bool Menu4;
} globalDerechos;
|
Ahora bien cuando identifico al usuario leo en su definicion (tabla) los campos de la sig.manera (recordando de incluir la forma principal en la forma de definicion de usuarios
| Código: |
frmMain->globalDerechos.Menu1=tbUsuario->FieldByName("derecho_1")->AsBool;
frmMain->globalDerechos.Menu2=tbUsuario->FieldByName("derecho_2")->AsBool;
frmMain->globalDerechos.Menu3=tbUsuario->FieldByName("derecho_3")->AsBool;
frmMain->globalDerechos.Menu4=tbUsuario->FieldByName("derecho_4")->AsBool;
|
ahora simplemnte en la forma principal puedo escodenr los menus que no tiene acceso el usuario o restringir la entrada
| Código: |
if(globalDerechos.Menu1==false)
{ShowMessage("NO PUEDES ENTRAR");
else
{
// Cargas la forma o lo que fuera
}
|
_________________ Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc
http://www.touchsoftwares.com |
|
| Volver arriba |
|
 |
Angel Master


Registrado: 15 Abr 2003Mensajes: 2311Ubicación: Toledo (España)
|
|
| Volver arriba |
|
 |
Cruiz Ens


Registrado: 29 Oct 2003Mensajes: 30Ubicación: Granada, España.
|
Publicado: Mie 29 Oct, 2003 2:00 pm Asunto: Duda sobre estructura |
|
|
En primer lugar gracias por orientarme en el sentido de las estructuras.
Soy nuevo en c++Builder, pero me suenan de TurboPascal.
Una pregunta:
Como se haría un fichero con formato de la estructura para guardar y recuperar de disco. ?
no he visto nada en la ayuda.
Un Saludo cordial. _________________ == No !! al fin de c++ Buider. == |
|
| Volver arriba |
|
 |
Touchsoftwares Master


Registrado: 16 Dic 2002Mensajes: 869Ubicación: MEXICO Playa del Carmen
|
Publicado: Mie 29 Oct, 2003 3:37 pm Asunto: |
|
|
MIra hace mucho tiempo que no hago programas que lean/escriban ARCHIVOS BINARIOS (esa es la repuesta a tu pregunta)
Simplemente creas el archivo binario (open(algunos parametros) y guardas la informacion (write (Creo..no me acuerdo bien, tendrias que checar el manual)) con la informacion de la estructura, y de la misma manera la lees, recuerda que lo que tienes en una estructura es una "secuencia de bytes"
Saludos
Palabras clave a buscar:
Archivos Binaraios
Random
Estructuras
Debe estar eso en libros basicos de c o c++
Disculpa por no ser de mas ayuda _________________ Ing. Gabriel Góngora Navarrete
TouchSoftwares Inc
http://www.touchsoftwares.com |
|
| Volver arriba |
|
 |
_Viktor Master


Registrado: 20 Jul 2003Mensajes: 463Ubicación: Santiago, Los Angeles - Chile
|
Publicado: Mie 29 Oct, 2003 4:15 pm Asunto: |
|
|
Hola, lo que te diche Touchsoftware es correcto, pero ademas busca en en la ayuda de tu C esto:
//para lectura y escritura binaria
fread
fwrite
//tratamiento de archivos
fopen
fclose
Etc...
Saludos! _________________ "Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez
Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!! |
|
| Volver arriba |
|
 |
Miguel Angel Torres Master


Registrado: 23 Abr 2006Mensajes: 282Ubicación: Siegen, Alemania
|
Publicado: Mie 26 Abr, 2006 7:23 pm Asunto: Para escribir y leer archivos haces esto |
|
|
PARA ESCRIBIR:
#include <stdio.h>
#include <stdlib.h>
int main()
{
int i, score[10];
FILE *Archivo;
for(i=0; i<10; i++)
score[i] = 100-i;
Archivo = fopen("Archivo.txt", "w");
if( Archivo == NULL )
{
puts("Error abriendo Archivo.txt");
exit(0);
}
for( i=0; i<10; i++ )
fprintf( Archivo, "Numero %d:\t %d\n", i+1, score[i]);
return 0;
}
La salida del archivo sería esta:
Numero 1: 100
Numero 2: 99
Numero 3: 98
Numero 4: 97
Numero 5: 96
Numero 6: 95
Numero 7: 94
Numero 8: 93
Numero 9: 92
Numero 10:91
PARA LEER:
CREAR UN ARCHIVO LLAMADO INFO.TXT Y METER UN NOMBRE, DAR ENTER Y DESPUES UN NUMERO.
#include <stdio.h>
#include <stdlib.h>
int main()
{
char name[10];
char FileName[10] = "info.txt";
int age;
FILE *infoFile;
infoFile = fopen(FileName, "r");
if( infoFile == NULL )
{
printf("Error abriendo el archivo: %s", FileName);
exit(0);
}
if( fscanf( infoFile, "%s%d", name, &age) != 2 )
{
puts("Error leyendo el archivo!");
exit(0);
}
printf("%s tiene %d años!\n", name, age);
puts("Programa terminado correctamente!");
return 0;
}
Espero te sirva la información,
---------------------------
Suerte |
|
| Volver arriba |
|
 |
|