Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - avesudra

#481
Ya que veo que estás conectada inalámbricamente me pregunto si es posible que te estén robando el ancho de banda de internet ¿está bien protegida tu red con contraseña etc...? Otra cosa no se me ocurre o igual firefox se ha actualizado automáticamente y ahora vaya más lento , cosa que dudo.
#482
Vale pero sin ánimo de ofender ¿cuál es el problema? es decir ¿y el enunciado?
Perdona , ya se que quisiste decir , sí , lo que tienes que hacer es implementar funciones que hagan cada cosa del menú.Dividir el programa en subrutinas, sólo por el simple hecho de «Divide y vencerás»
¡Un saludo y bienvenido al foro!
#483
¡Muy bueno Xafi! ¡Muchísimas gracias! Se agradece el trabajo.

¡Un saludo!
#484
Programación C/C++ / Re: eliminar caracteres
30 Octubre 2012, 18:10 PM
Pues avanzas en uno el puntero de la cadena , así se come el primer carácter  ;D
Código (cpp) [Seleccionar]
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <string>
#include <iostream>


int main()
{
 char cadena[20];
 printf("introduzca la cadena\n");
 std::cin>>cadena;
 int i = strlen(cadena) - 1;
 cadena[i] = '\0';
 printf("%s\n", cadena+1);// <===== AQUÍ
 return 0;
}
#485
He modificado el post de arriba y he puesto un ejemplo de código con archivos.

¡Un saludo!
#486
Debes usar los tipos definidos en:
#include <stdint.h>
Y los especificadores de formato definidos en:
#include <inttypes.h>

Aquí una referencia de stdint.h
Aquí una referencia de inttypes.h

Código de ejemplo:

#include <stdint.h>
#include <inttypes.h>
#include <stdio.h>

int main( int argc , char **argv)
{
  uint64_t numero = 0;
  printf("Introduzca un numero:");

  //Aquí se usa %llu , por que en la referencia pone.
  //#define SCNu64 'llu'
  //La u es para los sin signo , la i y  la d para los enteros con signo
  scanf("%llu",&numero);

  //Aquí se usa %llu , por que en la referencia pone.
  //#define PRIu64 'llu'
  //La u es para los sin signo , la i y  la d para los enteros con signo
  printf("Tu numero es %llu", numero);

  getchar();
  return 0;
}


En la referencia de los especificadores de formato:

  • PRI significa PRINTF, es decir , que eso es para imprimir el numero , que lleve i o d , depende de la que quieras usar.
  • SCN significa SCANF , es decir, que sirve para introducir el numero , y lo mismo que arriba , puedes usar i o d.

Para lo de los archivos , pone esto en el código fuente de inttypes.h :
00074  *//           The fprintf() macros for signed integers are:
00075  *//           PRIdN   PRIdLEASTN  PRIdFASTN   PRIdMAX  PRIdPTR
00076  *//           PRIiN   PRIiLEASTN  PRIiFASTN   PRIiMAX  PRIiPTR
00077  *//           
00078  *//           The fprintf() macros for unsigned integers are:
00079  *//           PRIoN   PRIoLEASTN  PRIoFASTN   PRIoMAX  PRIoPTR
00080  *//           PRIuN   PRIuLEASTN  PRIuFASTN   PRIuMAX  PRIuPTR
00081  *//           PRIxN   PRIxLEASTN  PRIxFASTN   PRIxMAX  PRIxPTR
00082  *//           PRIXN   PRIXLEASTN  PRIXFASTN   PRIXMAX  PRIXPTR
00083  *//           
00084  *//           The fscanf() macros for signed integers are:
00085  *//           SCNdN   SCNdLEASTN  SCNdFASTN   SCNdMAX  SCNdPTR
00086  *//           SCNiN   SCNiLEASTN  SCNiFASTN   SCNiMAX  SCNiPTR
00087  *//           
00088  *//           The fscanf() macros for unsigned integers are:
00089  *//           SCNoN   SCNoLEASTN  SCNoFASTN   SCNoMAX  SCNoPTR
00090  *//           SCNuN   SCNuLEASTN  SCNuFASTN   SCNuMAX  SCNuPTR
00091  *//           SCNxN   SCNxLEASTN  SCNxFASTN   SCNxMAX  SCNxPTR


Si quieres hacerlo con archivos te dejo este ejemplo:
#include <stdint.h>
#include <inttypes.h>
#include <stdio.h>

int main( int argc , char **argv)
{
  uint64_t numero = 0;
  FILE * archivo;
  archivo = fopen("numero.txt","r"); // Abrimos un archivo para leerlo que debe contener el número.
  /*   The fscanf() macros for unsigned integers are:
         SCNoN   SCNoLEASTN  SCNoFASTN   SCNoMAX  SCNoPTR
         SCNuN   SCNuLEASTN  SCNuFASTN   SCNuMAX  SCNuPTR
         SCNxN   SCNxLEASTN  SCNxFASTN   SCNxMAX  SCNxPTR
  */
  //Nosotros vamos a usar SCNu64 , N se sustituye por uno de los numeros de bits.
  fscanf(archivo, "%llu", &numero);
  printf("El numero del archivo es %llu", numero);
  getchar();
  return 0;
}


Si necesitas usar más de 64 bits , tendrás que recurrir a una librería externa a las estándares, aunque también es muy portable, es GMP , si quieres compilarla algún día, este verano puse un tutorial que estará rulando por ahí.

¡Un saludo!

PD: tu problema igual era que no utilizabas el especificador de formato correcto.
#487
Es que no es necesaria una función para lo que pides.Para eso normalmente se imprime el carácter directamente como entero.
Ejemplo:
#include <stdio.h>

int main ( int argc, char**argv)
{
  char letra = 'A'; //Letra A mayúscula que es 65 en decimal.
  printf("La letra imprimida como caracter es: %c\n",letra);//Aquí el especificador de formato es %c de carácter.
  printf("La letra imprimida como su valor ASCII en sistema decimal es: %d", letra); //Aquí el especificador de formato es %d de decimal.
  return 0;
}

PD: Ni siquiera hace falta un casting (conversión) como dice Satu , podrías asignar el valor de un carácter a un entero sin problema alguno de esta manera:
char letra = 'A';
int letraValor = letra; //No es necesario un casting ya que un char es un entero de 1 byte.
#488
Foro Libre / Re: ¡Vuestros Ordenadores!
21 Octubre 2012, 00:44 AM
Cita de: Daemon Freedom en 20 Octubre 2012, 23:36 PM
El mes que viene me pillo un portátil. GTX680, i7, 32gb ram, 2 ssd en raid0, y un hd extra a 7200rpm. Ya subiré fotos, que ganitas  :P
que máquina!! ¿32 gb y gtx680? una pregunta si no es muy personal , ¿eso es para diseño gráfico?
#489
Foro Libre / Re: ¡Vuestros Ordenadores!
20 Octubre 2012, 23:22 PM
Cita de: Dryken en 20 Octubre 2012, 14:26 PM
Jajaja mi PC no podía faltar en este post.



Todo lo gasto en el pc y mi tiempo en videojuegos y aprendiendo en elhacker. se nota que no tengo vida social :xD
Me he enamorado de tu teclado... ¿Cual es?
#490
El operador de comparación es tal y como dice DonVidela , si no estarias asignando , por otro lado , el array Datos  a que apunta ¿a una estructura? Pon el código entero porque si nó ...