Estoy tratando de imprimir valores de size_t usando cout. Aqui esta mi codigo

#include <iostream>
using namespace std;
int main() {
  size_t blah = 15;
  cout << blah +" gibberish";
  return 0;
}

El resultado que obtengo es este: D.

¡Gracias por la ayuda! :)

* Estoy intentando usar este para imprimir el uso de la memoria.
* Además, ¿qué es exactamente la unidad de size_t?
* Intenté publicar cout<<blah +" bytes";, lo que me da un emoji Unicode de teléfono (U + 0007: BELL [BEL]) como resultado, pero stackoverflow se niega a mostrarlo.

0
Sarwagya 24 ago. 2020 a las 17:04

1 respuesta

La mejor respuesta

blah +" bytes" está agregando un número entero a un puntero (convertido de una matriz de char), por lo que el puntero se mueve a un lugar no válido.

Deberías hacer

#include <iostream>
using namespace std;
int main() {
  size_t blah = 15;
  cout << blah << " bytes";
  return 0;
}

En lugar de. (use << en lugar de +: imprima el número y la cadena uno por uno en lugar de intentar concatenarlos de antemano)

4
MikeCAT 24 ago. 2020 a las 14:10