rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Allocation memoire en C

Posté par Sabre, le mercredi 1 juin 2005 à 13:43:54
Bonjour,
je sais que en langage C la gestion de mémoire est primordiale, surtout au niveau des pointeurs.
Par contre je trouve sopuvent dans des programmes des ligne de code comme celle-ci:

char *tableau="chaine de caracteres";


Or si je ne m'abuse ce code est cohérent malgrès le fait que on a pas réservé la mémoire.

Un grand merci à celui qui pourrait m'éclairçir la situation.
Configuration: Linux
Répondre à Sabre  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
coucou_c_julien, le mercredi 1 juin 2005 à 14:08:41
salut!
ca ca veut dire que ableau est un pointeur de char(chaine de caractere) qui contient la valeur "chaine de caractere"! La vie est belle!
Répondre à coucou_c_julien

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Marden, le mercredi 1 juin 2005 à 14:30:07
C'est le compilateur qui réserve l'espace nécessaire au stockage de la chaîne ET en fournit l'adresse.
Répondre à Marden

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Sabre, le mercredi 1 juin 2005 à 14:31:25
Merci c'est cool
Répondre à Sabre

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 TuXor, le mercredi 1 juin 2005 à 14:41:47
Salut,

j'ai "subi" quelque cours a ce sujet, et voila ce qui m'en reste :

En fait le C offre deux niveaux de gestion mémoire, d'un coté le compilateur gère automatiquement un espace mémoire(je crois que c'est la "pile") qui est alloué a l'exécution de ton programme (c'est pour cela par exemple qu'on spécifie la taille des tableaux et que l'on définit les différants type des variables ) pour utilier juste la place nécessaire.

Il existe également un autre espace de mémoire (le "tas" me semble-t-il) qui est lui géré par le programmeur, c'est la qu'intervient la manipulation de pointeurs dynamique. (malloc, sizeof etc...)
le programmeur demande un espace mémoire qui va lui étre accordé, et qui va étre accessible par un pointeur qui est en fait une adresse mémoire.

j'espère que ces quelques explication sont compréhenibles et qu'elle auront été utiles (c'est de tête il peut y avoir des erreurs)
@+
Répondre à TuXor
Logiciels pertinents trouvés dans les téléchargements
Télécharger PowerISO 4.2PowerISO - PowerISO est un outil de gestion d'images de CD et DVD, capable d'ouvrir, d'extraire, de créer, d'éditer, de compresser et...Catégorie: Gravure
Licence: Demo
Télécharger Aide-mémoire 2.3Aide-mémoire - Ce logiciel permet de coller des aides mémoires (post-it) sur votre bureau. Son but est simple, éviter de décorer votre...Catégorie: Organisation
Licence: Freeware/gratuit
Télécharger Process Explorer 11.20Process Explorer - Process Explorer est un gestionnaire des tâches évolué. Il permet de voir de nombreuses informations: savoir quel...Catégorie: Diagnostic
Licence: Freeware/gratuit
Télécharger Ottodikt   1.0Ottodikt - Dès la fin des classes préparatoires, les élèves sont initiés à la dicté. Il n'est pas toujours évident d'être bon en cette...Catégorie: Environnement de travail
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « Allocation memoire en C »