C++ : j'ai du mal là :D - Programmation
Marsh Posté le 19-01-2002 à 16:29:26
un pointer
Marsh Posté le 19-01-2002 à 16:30:18
ben ce que tu as fait la c'est :
1) recupere l'adresse de keyuse ( &keyuse)
2) caster cette adresse non plus en DYNAMIC_ARRAY * mais en char *
Marsh Posté le 19-01-2002 à 16:35:22
BOn ca va ch'uis rassuré j'avais compris
Mais bzero fait quoi, il met autant de zero que sizeof(keyuse) dans l'adresse ? (pas le contenu de l'adresse)
Marsh Posté le 19-01-2002 à 16:37:13
Code :
|
Ici il met à zero la structure pointée.
[edtdd]--Message édité par Verdoux--[/edtdd]
Marsh Posté le 19-01-2002 à 16:37:58
nope dans le contenu dans l'adresse, enfin, ce sur quoi l'adresse pointe .
regarde
int a = 5;
bzero( (char *)&a,sizeof(a));
apres ca, a = 0;
en premier parametre tu lui file l'adresse des données a modifié, en deuxieme la taille des données en octet
alles klar ?
Marsh Posté le 19-01-2002 à 16:38:43
vi ca je l'ai déjà...
donc en gros c'est une méthode rapide pour initialiser toutes les variables de DYNAMIC_ARRAY à 0 ?
[edtdd]--Message édité par joce--[/edtdd]
Marsh Posté le 19-01-2002 à 16:38:56
au fait, tant que t la, y'aurait moyen de desactiver les smiley dans les bouts de post compris entre [ code] et [ /code] ?
ca donne des trucs louche parfois
Marsh Posté le 19-01-2002 à 16:39:38
chrisbk a écrit a écrit : au fait, tant que t la, y'aurait moyen de desactiver les smiley dans les bouts de post compris entre [ code] et [ /code] ? ca donne des trucs louche parfois ![]() |
faudrait que je regarde
Marsh Posté le 19-01-2002 à 16:39:52
joce a écrit a écrit : vi ca je l'ai déjà... donc en gros c'est une méthode rapide pour initialiser toutes les variables de DYNAMIC_ARRAY à 0 ? |
Yes !
mais surtout, SURTOUT, vu que t en c++, ne fais jamais cela sur une classe ou structure contenant des fonction virtuelles !
plantage en vue, sinon
Marsh Posté le 19-01-2002 à 16:48:02
c noté
ca plante à la compile ou après ? (ca sent l'expérience )
Marsh Posté le 19-01-2002 à 16:48:39
joce a écrit a écrit : c noté ca plante à la compile ou après ? (ca sent l'expérience ![]() |
Après bien sûr !
Marsh Posté le 19-01-2002 à 16:51:41
oué après, et oué ca sent l'expérience
d'une maniere générale n'effectue pas de memset / memcpy / bzero & cie sur des classes, generalement ca se finit en drame
Marsh Posté le 19-01-2002 à 16:22:55
J'ai ca :
typedef struct st_dynamic_array {
char *buffer;
uint elements,max_element;
uint alloc_increment;
uint size_of_element;
} DYNAMIC_ARRAY;
DYNAMIC_ARRAY keyuse;
bzero((char*) &keyuse,sizeof(keyuse));
(char*) &keyuse représente quoi