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

 

 


Tema destacado: Sigue las noticias más importantes de seguridad informática en el Twitter! de elhacker.NET


  Mostrar Mensajes
Páginas: 1 [2]
11  Programación / Programación C/C++ / Re: Malloc ... en: 5 Mayo 2010, 19:46 pm
veras en el curro nos quitaron a todos permiso de administrador por ello no me pude instalar ningun compilador,.
lo unico uso uno portable el turbo C++,como no hace falta instalacion me lo llevo en un pen y listo..
12  Programación / Programación C/C++ / Re: duda en: 5 Mayo 2010, 19:42 pm
hola difel,
yo tmb soy estudiante y lo que manejo es printf y scanf pero porque programo en C.
tu profe usara cin>> o cout>> porque les estara enseñando a vosotros C++.

printhf no lo he visto pero imagino que te referirias a printf no?
13  Programación / Programación C/C++ / Re: Malloc ... en: 5 Mayo 2010, 19:27 pm
Hola chicos,gracias por responder  ;-),

leo no se porque pero poniendo el main como int main(){
y al final del main el return 0; me seguia dando los 2 errores que comente anteriormente.
Pero modificando mis malloc's como indico cgvwzq desaparecieron los errores  :o
las lineas quedaron asi:
float *vec=(float *)(malloc(sizeof(float)*l));
float *vec2=(float *)(malloc(sizeof(float)*l));
comparando con new ,new es mucho mas simple  :D

chicos y si en lugar de un float mi vector es de letras es decir un char?
seria asi?
char *cad=(char *)(malloc(sizeof(char)*longi));
en resumen siempre se sigue la misma estructura en malloc? no tiene nada que ver que mi longi sea de tipo int no?
14  Programación / Programación C/C++ / Re: Malloc ... en: 5 Mayo 2010, 19:04 pm
Hola Leo gracias por el code,veras lo probe en mi programa :
Código
  1. /*5.    Crear una función que copie el contenido de un primer vector de flotantes
  2. en otro segundo con el mismo número de elementos. La función debe ser válida para
  3. cualquier par de vectores con el mismo número de elementos. Genera el
  4. programa principal para poder ejecutar la función creada.*/
  5.  
  6. #include<stdio.h>
  7. #include<stdlib.h>
  8. void copiar_valor(float *,int,float *);
  9. void print_vector(float *,int,float *);
  10. void main(){
  11.  
  12. int l=0,i=0;
  13.  
  14. do{
  15. printf("Introduce la longitud del primer vector:\n");
  16. scanf("%d",&l);
  17. }while(l<0);
  18. printf("La longitud del segundo vector sera la misma\n");
  19. float *vec=malloc(sizeof(float)*l);
  20. float *vec2=malloc(sizeof(float)*l);
  21.  
  22. for(i=0;i<l;i++){
  23. printf("inserta valores para el primer vector %d:",i);
  24. scanf("%f",vec+i);
  25. }
  26.  
  27.  
  28. copiar_valor(vec,l,vec2);
  29. print_vector(vec,l,vec2);
  30. free(vec);
  31. free(vec2);
  32.  
  33. }
  34. void copiar_valor(float *vector,int size,float *vector2){
  35. int i;
  36. for(i=0;i<size;i++){
  37.  
  38. *(vector2+i) = *(vector+i);
  39. }
  40.  
  41.  
  42. }
  43. void print_vector(float *vector,int size,float *vector2){
  44. int j;
  45. for(j=0;j<size;j++){
  46. printf("%0.2f\n",*(vector+j));
  47. }
  48. for(j=0;j<size;j++){
  49. printf("\n%0.2f",*(vector2+j));
  50.  
  51.  
  52. }
  53. }
  54.  
Al compilar me salen 2 errores  y son ambos en las lineas del malloc..
Código
  1. el error es "cannot convert 'void *' to 'float *' in fuction main()
15  Programación / Programación C/C++ / Malloc ... en: 5 Mayo 2010, 18:41 pm
Hola chicos :-[..
Usando malloc como seria para usar el valor de la longitud de mi vector?
me explico con new era algo asi:float *vec=new float[l]; // donde l era la longitud que el usuario indico en el programa... bien con malloc viendo su estructura en google seria lo siguiente:
float *vec = malloc(sizeof(float));//como hago para indicar la longitud del vector?

Y en cadenas me podeis decir porfavor algun ejemplo de cadenas y como reservar memoria con malloc?..que reciba la cadena en el main y luego trabaje con el contenido de ella en una funcion por referencia usando punteros..

Muxisisimas gracias de antemano
16  Programación / Programación C/C++ / Re: Consultas sobre punteros en funciones por referencia.. en: 5 Mayo 2010, 17:47 pm
Muchas gracias a todos por responder,tenia razon akai,me daba error por no usar la libreria stdlib.h cuando queria probar con malloc,..me leere mucho ya que solo habia oido de malloc y free pero no de calloc ,realloc..
Y lo del new lo preguntaba porque mañana tendre un examen de C y seguramente cae algo de punteros y no vaya a ser que el profe al ver mi uso de new me ponga mala nota ya que es de C++ y no de C..xD
Por utlimo lo de las cadenas... no lo entendi muy bien ,,pero para no liaros con 2 temas en el mismo post creare uno nuevo.Nuevamente mil gracias por despejar mis dudas =),
17  Programación / Programación C/C++ / Re: Consultas sobre punteros en funciones por referencia.. en: 5 Mayo 2010, 17:03 pm
hola la duda es en relacion a que si esta bien que cuando el el enunciado de los ejercicios me digan "sea cual sea el numero de los elementos.."Hago bien usando NEW?
float *vec=new float[l]; // caso 1 donde l es la longitud..

el lenguaje que utilizo es C pero no uso malloc porque me da error ,sin embargo al usar new no me da errores y compila  y ejecuta,.. Y no se si hago bien.. con el uso del NEW para estos ejercicios...

y luego otra duda sabeis de alguna pagina en la que pueda encontrar ejercicios resueltos de cadenas en paso por referencia? tengo un ejercicio de cadenas y por mas que gogleo no encuentro.. =(
18  Programación / Programación C/C++ / Consultas sobre punteros en funciones por referencia.. en: 5 Mayo 2010, 10:11 am
Hola chicos,primeramente al ser mi primer post presentarme mi nombre es rosario y he estado viendo C por mi cuenta pero al llegar a punteros me he detenido ya que se me han generado dudas..

Por ejemplo,
Cuando en el enunciado de un ejercicio me dicen:
Crear una función a la que se le pasará una cadena de caracteres de cualquier
 longitud
  o  " Crear una función que copie el contenido de un primer vector de flotantes
en otro segundo con el mismo número de elementos. ",en Relacion al numero de elementos yo realize los ejercicios usando despues del printf en el cual el usuario indique la longitud lo siguiente:
float *vec=new float[l]; // caso 1 donde l es la longitud..
char *cad = new char[l+1];// le puse el mas uno por el /0 ..

claro que luego use un delete para liberar la memoria reservado delete []vec;
Pero no se si hago bien..
os pongo el codigo del primer ejercicio para que porfavor me deis vuestra opinion..
Salu2
Código
  1. /*5.    Crear una función que copie el contenido de un primer vector de flotantes
  2. en otro segundo con el mismo número de elementos. La función debe ser válida para
  3. cualquier par de vectores con el mismo número de elementos. Genera el
  4. programa principal para poder ejecutar la función creada.*/
  5.  
  6. #include<stdio.h>
  7. #include<string.h>
  8. void copiar_valor(float *,int,float *);
  9. void print_vector(float *,int,float *);
  10. void main(){
  11.  
  12. int l=0,i=0;
  13. do{
  14. printf("Introduce la longitud del primer vector:\n");
  15. scanf("%d",&l);
  16. }while(l<0);
  17. printf("La longitud del segundo vector sera la misma\n");
  18. float *vec=new float[l];
  19. float *vec2=new float[l];
  20.  
  21. for(i=0;i<l;i++){
  22. printf("inserta valores para el primer vector %d:",i);
  23. scanf("%f",vec+i);
  24. }
  25.  
  26.  
  27. copiar_valor(vec,l,vec2);
  28. print_vector(vec,l,vec2);
  29. delete []vec;
  30. delete []vec2;
  31. }
  32. void copiar_valor(float *vector,int size,float *vector2){
  33. int i;
  34. for(i=0;i<size;i++){
  35.  
  36. *(vector2+i) = *(vector+i);
  37. }
  38.  
  39.  
  40. }
  41. void print_vector(float *vector,int size,float *vector2){
  42. int j;
  43. for(j=0;j<size;j++){
  44. printf("%0.2f\n",*(vector2+j));
  45. }
  46. for(j=0;j<size;j++){
  47. printf("\n%0.2f",*(vector+j));
  48.  
  49.  
  50. }
  51. }
  52.  

..Mil gracias  :)
Páginas: 1 [2]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines