Ver Mensaje Individual
  #9 (permalink)  
Antiguo 17/03/2015, 03:34
eferion
 
Fecha de Ingreso: octubre-2014
Ubicación: Madrid
Mensajes: 1.212
Antigüedad: 9 años, 6 meses
Puntos: 204
Respuesta: Necesito un método para validar números y letras

Cita:
Iniciado por aguml Ver Mensaje
y ademas no es infinito. Creo que el maximo son 2 gigas. En c siempre se puede usar malloc y trabajar con memoria dinamica pero si recien empiezas no deberias tratar con ello.
El índice que utiliza std::string es de tipo size_t. En la mayoría de los casos, size_t es de tipo unsigned int, es decir, 32 bits sin signo. Dado que std::string usa el tipo char (8 bits - 1 byte) para almacenar el texto, tenemos que: max = 2^32 = 4.294.967.296 B = 4.194.304 KB = 4.096 MB = 8 GB

Lo que sucede es que los equipos de 32 bits tienen una limitación de memoria direccionable de (creo recordar) unos 2 GB - 3 GB, por lo que no vas a poder superar ese límite en ningún momento. Sin embargo, un entorno de 64 bits es capaz de manejar varios petabytes de información ( 1 PB = -redondeando-1.000.000 GB )

Cita:
Iniciado por vangodp Ver Mensaje
Código C++:
Ver original
  1. char c = "Hola Mundo!"; // <--- debería ser char*
  2.  
  3. if ( c == cadena.c_str() ){ //comparar objeto tipo string  con cadena C_string.
  4. //son iguales
  5. }
Espero que no compares nunca dos char* con el operador '==', ya que únicamente estarás comparando la dirección de memoria de ambos punteros jejejeje.