begin process at 2010 02 10 11:38:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Divers

 > 

Utiliser memset avec unsigned long *ma_variable


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Utiliser memset avec unsigned long *ma_variable

mercredi 29 avril 2009 à 17:04:29 | Utiliser memset avec unsigned long *ma_variable

ndubien

Membre Club
Bonjour,
Je possède une variable unsigned long *ma_variable = malloc( sizeof(unsigned long) * 10 ); que je souhaiterais remplir de 0, j'ai alors penser à la fonction memset() mais le problème c'est que lorsque je fait memset(ma_variable,0,sizeof(ma_variable)); tous les caractères ne sont pas remis à zéro. Je me suis alors rendu sur MSDN et est trouvé cela http://msdn.microsoft.com/en-us/library/1fdeehz6(VS.71).asp : il semblerait que memset soit fait pour les char* et non les int*.
Puis-je utiliser memset() avec mon int *ma_variable ?
memset( ma_variable, 0, _msize(ma_variable) ); est-il la solution ?
Merci d'avance pour vos réponses et à bientôt !
mercredi 29 avril 2009 à 17:28:36 | Re : Utiliser memset avec unsigned long *ma_variable

TychoBrahe

Salut,

Commence déjà par regarder le prototype de memset :
void *memset(void *s, int c, size_t n);

En quoi est-ce que c'est fait pour les char* et non les int* ? Si elle prend un void* c'est pour tout accepter comme pointeur. maintenant relis son fonctionnement :
«The  memset()  function  fills  the  first  n  bytes of the memory area pointed to by s with the constant byte c.»
Rien qu'avec ça tu devrais réaliser ton erreur et la corriger. Au cas où tu peine, regarde plus précisément ce qu'est exactement le dernier paramètre de la fonction et compare avec ce que tu as écrit dans l'appel a memset et celui a malloc.

Conclusion: vive le man :)

mercredi 29 avril 2009 à 21:03:14 | Re : Utiliser memset avec unsigned long *ma_variable

BruNews

Administrateur CodeS-SourceS

ma_variable étant un pointeur:
sizeof(ma_variable) = 4 !!!
= 8 si tu compiles en x64.

int i = 9; // DERNIER ELEM
do {
  ma_variable[i] = 0;
} while(--i >= 0);

ah que voila du memset ...

ciao...
BruNews, MVP VC++



Cette discussion est classée dans : long, variable, utiliser, unsigned, memset


Répondre à ce message

Sujets en rapport avec ce message

Problème avec memset [ par ndubien ] Bonjour, je dispose d'une fonction qui alloue de la mémoire à un tableau puis le remplie de 0 grâce à memset(), mais le problème est que se remplissag type unsigned long long avec borland c++ [ par douss4 ] Bonjour,Je fait actuellement un programme de cryptage qui utilise une clé de 64 bits, ce qui correspond à la taille (d'après mes recherches) d'un unsi asservissement position et vitesse [ par marabou34 ] bonjours ,je développe actuellement un contrôleur moteur a base du microprocesseur  NXP lpc2138 j utilise uvision3 comme compilateur et le kit mcb2130 ReadprocessMemory & WriteFile [ par Deimos_ ] Salut à tous, J'ai un petit problème avec les fonctions ReadProcessMemory() et WriteFile() ! En fait, je souhaiterais obtenir dans un fichier texte q Créer 1 variable avec plus de 32 bits [ par Balou001 ] Bonjour à tous,Supposons que j'ai une variable V de type unsigned long int dont tous les bits sont à 1 (bits forts à gauche).quand je fais un V>=1, le thread [ par dev_hy ] voila je veux utiliser les threads sous windows. alors j'ai crée un classe thread, dans la méthode de créeation de thread toute est bon mais il m'affi code pour microcontroleur [ par develdelphi ] Bonjour, J'ai un code pour microcontroleur,et je ne comprend pas certaines ligneset il s'agit d'opérations sur bits que voici: le programme:////// asservissement pid a base du mcb2130 et un lmd18200t [ par marabou34 ] salut a tous j ai un petit problème pour implanté un asservissement de position et de vitesse je suppose que je doit faire des interruption timer pour Conversion de type [ par rfad ] Bonjour, Je développe une DLL en Visual C++ "Visual Studio 8" avec des fonctions qui font du cryptage. Une des fonctions doit prendre un unsigned long


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,718 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales