|
241
|
Programación / Programación C/C++ / Re: Archivos
|
en: 29 Agosto 2013, 02:33 am
|
ya revise algunos tutoriales y me resolvio muchas dudas, el codigo por ahora lo tengo asi: #include <stdio.h> #include <stdlib.h> int main() { FILE *fd; int ad; ad = creat("F:\\archivo_destino.txt",755); if((fd = fopen("F:\\archivo_fuente.txt","r"))!=NULL ) { while(read(fd,ad,1)!=NULL) write(1,ad,1); } else { printf("No se pudo abrir el archivo\n"); } close(fd); return 0; }
primero ya que tengo mi archivo con una cadena de caracteres, tengo que pasarlas a otro archivo, y es ahi donde no se que hacer, si crear el archivo destino(a donde voy a copiar los caracteres), de esta manera: int ad; ad = creat("F:\\archivo_destino.txt",755);
y pasarle ad a la funcion read while(read(fd,ad,1)!=NULL)
o crear un array tipo char para ahi almacenar la cadena del archivo fuente #include <stdio.h> #include <stdlib.h> int main() { FILE *fd; char cad[40]; if((fd = fopen("F:\\archivo_fuente.txt","r"))!=NULL ) { while(read(fd,cad,1)!=NULL) write(1,cad,1); } else { printf("No se pudo abrir el archivo\n"); } close(fd); return 0; }
|
|
|
242
|
Programación / Programación C/C++ / Archivos
|
en: 28 Agosto 2013, 21:16 pm
|
Saludos Tengo que hacer un programa que copie todos los caracteres de un archivo fuente a uno destino, ya he creado el archivo fuente (el que contiene los caracteres), y ya lo pude abrir, el problema es que no se muy bien como manejar archivos y como hacer que me recorra toda la linea de caracteres y copiarlos en otro archivo. #include <stdio.h> #include <stdlib.h> int main() { FILE *p; p = fopen("F:\\archivo.txt","r"); if(p!=NULL) printf("Si se pudo abrir el archivo\n"); else { printf("No se pudo abrir el archivo\n"); } return 0; }
no les pido que me muestren el codigo, solo que me den una idea de como hacerlo gracias
|
|
|
243
|
Programación / Programación C/C++ / Re: arreglo de punteros y funciones
|
en: 27 Agosto 2013, 21:38 pm
|
saludos el programa es algo como esto: int main() { char B[TAM],*array[N]; int i; for(i=0;i < N;i++) { printf("Dame el %d dato: ",i +1); nombre_funcion(array,i); } return 0; } int nombre_funcion(char *a[],int i) { int c[TAM]; for(????;????';????) return 0; }
en nombre_funcion tengo que pasarle por parametro cada uno de los punteros a los que le asigne memoria en la funcion main, y en el for tengo que recorrer la cadena para hacer un X procedimiento, es ahi donde tngo el problema gracias por sus respuestas
|
|
|
244
|
Programación / Programación C/C++ / arreglo de punteros y funciones
|
en: 27 Agosto 2013, 00:58 am
|
saludos
tengo declarado un arreglo de punteros por ejemplo: char* a[N], y para ingresarle los datos tengo que asignarle memoria a cada uno de los punteros con malloc, una vez que ya hice eso tengo que enviar cada uno de los punteros a una funcion x, y es ahi donde tengo el problema que no se si tengo que enviar: funcion(a) o tambien tengo que enviarle la posicion o sea : *a[1],*a[2],*a[3]
gracias
|
|
|
245
|
Foros Generales / Dudas Generales / Invalid menu handle
|
en: 25 Agosto 2013, 23:34 pm
|
Saludos
Estoy teniendo un problema a la hora de querer descargar una imagen con extension .JPG, me aparece un mensaje de error que dice invalid menu handle, y no tengo idea de por que
gracias
|
|
|
246
|
Programación / Programación C/C++ / Re: tamaño de un arreglo
|
en: 24 Agosto 2013, 23:42 pm
|
Gracias por tu respuesta do-while creo que el problema que tengo con mi codigo es que tengo declarado un arreglo[10] de tamanio 10, pero en el ciclo for no voy a utilizar los 10 espacios, solo unos pocos, porque en el for le tengo que copiar al arreglo[] algunos elementos de otro arreglo, por eso no voy a necesitar las 10 posiciones.
pero cuando hago esto
tam = sizeof(arreglo)/sizeof(int)
no me calcula bien el numero de elementos, porque sizeof(arreglo) siempre me va a dar 40,(10 elementos * 4bytes que se necesitan para un entero)
y eso es lo que no se como corregir
|
|
|
247
|
Programación / Programación C/C++ / Re: tamaño de un arreglo
|
en: 24 Agosto 2013, 22:06 pm
|
Saludos Alien-Z, entonces no puedo hacer algo como esto: #include <stdio.h> #include <stdlib.h> #define TAM 10 int main() { int i , a[TAM],tam; for(i=0;i < TAM;i++) tam = sizeof(a)/sizeof(int); printf("El numero de elementos del arreglo es %d\n",tam ); return 0; }
|
|
|
248
|
Programación / Programación C/C++ / tamaño de un arreglo
|
en: 23 Agosto 2013, 23:52 pm
|
Saludos tengo una duda de como calcular el tamanio de de un arreglo con el uso de alguna funcion tipo strlen, pero strlen tengo entendido que solo es para cadenas y no para un array de enteros, que es lo que estoy buscando.
gracias
|
|
|
249
|
Programación / Programación C/C++ / Re: verificar numeros romanos
|
en: 22 Agosto 2013, 01:19 am
|
Saludos Alien-Z ya por fin pude encontrar el error, estaba en el puntero del segundo for, cada vez que entraba de nuevo al 2do ciclo el puntero no se reiniciaba a la primera posicion, pero ya lo pude corregir int main() { int i,j,bandera; char romano[TAM],letras[]={'I','V','X','L','C','D','M','\0'},*ptr,*p; printf("Dame el primer numero: "); ptr = romano; p = letras; for(i=*ptr;*ptr!='\0';*ptr++) { bandera = 0; for(j=0;((j<7)&&(bandera==0));j++) { if(*ptr == *(p+j)) bandera = 1; } if(!bandera) { printf("Error!No es numero romano\n"); } } return 0; }
muchas gracias
|
|
|
250
|
Programación / Programación C/C++ / Re: verificar numeros romanos
|
en: 21 Agosto 2013, 04:56 am
|
amchacon ya le puse lo que me dijiste en la condicion *ptr!= '\n' && *ptr!='\0' y no me funciona aun, sigo teniendo el mismo problema de que aunque le ponga un numero romano me imprime que no es #include <stdio.h> #include <stdlib.h> #define TAM 10 int main() { int i,j,bandera; char romano[TAM],letras[]={'I','V','X','L','C','D','M','\0'},*ptr,*p; printf("Dame el primer numero: "); ptr = romano; p = letras; for(i=*ptr;((*ptr!='\0')&&(*ptr!= '\n'));*ptr++) { bandera = 0; for(j=*p;(((*p!='\0')&&(*ptr!='\n'))&&(bandera==0));*p++) { if(*ptr == *p) bandera = 1; } if(!bandera) { printf("Error!No es numero romano\n"); } } return 0; }
|
|
|
|
|
|
|