Comment faire pour effacer le contenu de la mémoire en C?

Je suis à la définition d'un pointeur de char de cette manière.

char *s=(char *)malloc(10);

Après avoir rempli toutes les valeurs possibles qui peuvent s'appliquer ici, je veux effacer tout ce que j'ai écrit à s et sans l'aide de malloc nouveau envie d'écrire en s? Comment puis-je faire cela?

J'ai besoin de mettre à jour le contenu, mais si, dans la dernière itération de ne pas toutes les valeurs sont mises à jour, alors je vais être plus vieux que je ne veux pas faire.

  • Veuillez expliquer ce que vous entendez par "clair".
  • pourquoi s'embêter avec le nettoyage de la valeur si vous souhaitez mettre à jour le contenu de s de toute façon?
  • sizeof(2*5) drôle d'air... Essayez aussi sizeof(2/0)
  • qui vous donnerait un bloc de taille infinie.
  • Un rêve qui devient réalité! Vous méritez un prix Nobel 😉
  • et sizeof(-1000) serait de vous donner un négatif de la taille de tableau: très utile si vous êtes hors de la mémoire!
  • memset?
  • libre(s) permettra de libérer la mémoire allouée à pointeur s.
  • juste essayer ce...
  • ah oui, c'est sizeof(int)
  • Si vous souhaitez définir la zone mémoire à zéro, vous pouvez utiliser calloc. Par la façon dont, personnellement, quand je n'ai plus de mémoire, je préfère l'appeler Chuck Norris. Les puces de RAM obtenir tellement peur qu'ils se séparent, ce qui me donne le double de la mémoire. Eh bien, c'est ce que Chuck Norris m'a dit de toute façon après je lui ai donné mon âme.

InformationsquelleAutor gizgok | 2012-11-19