The UNIX and Linux Forums  
Bonjour et bienvenu par les États-Unis à la UNIX et Linux Forums! Merci de votre visite et vous joindre à notre communauté mondiale.

Go Back   Les systèmes UNIX et Linux Forums > Top Forums > High Level Programming
.
google unix.com



High Level Programming Posez vos questions à propos de C, C + +, Java, SQL, et d'autres langages de programmation ici.

Plus d'UNIX et Linux Forum Sujets Vous trouverez peut-être utile
Fil Thread Starter Forum Réponses Last Post
adresses de mémoire areef4u High Level Programming 0 08-04-2006 07:43 AM
Multi-caractères ASCII jerardfjay De programmation et de script Shell 8 11-18-2005 02:45 AM
Hex caractères du fichier ascii budrito HP-UX 2 08-10-2005 10:26 PM
question stupide à propos de caractères jalburger High Level Programming 2 09-28-2004 03:56 PM
adresses de mémoire Paravozzz High Level Programming 0 10-15-2002 12:17 PM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
LinkBack Thread Tools Recherche sur ce Thread Rate Thread Modes d'affichage
  #1 (permalink)  
Old 01-24-2008
JamesGoh JamesGoh is offline
Registered User
  
 

Join Date: Nov 2007
Posts: 89
langage c + simple question concernant la mémoire des adresses et des caractères ASCII

Juste une simple question (qui mai sembler absurde si patient avec moi) qui se pose dans mon esprit, l'autre jour. Est-ce que des caractères ASCII par eux-mêmes (par exemple, / n, 0, a) ont une adresse de mémoire?

Ma question se pose, parce que Im conscients que chaque fois que je crée un pointeur et initalise comme par exemple

Code:
int *ptr = 5;
J'obtiens toujours une erreur de pointeur null.

merci beaucoup
  #2 (permalink)  
Old 01-24-2008
shamrock shamrock is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2007
Lieu: États-Unis
Posts: 750
Citation:
Posté par JamesGoh View Post
Juste une simple question (qui mai sembler absurde si patient avec moi) qui se pose dans mon esprit, l'autre jour. Est-ce que des caractères ASCII par eux-mêmes (par exemple, / n, 0, a) ont une adresse de mémoire?

Ma question se pose, parce que Im conscients que chaque fois que je crée un pointeur et initalise comme par exemple

Code:
int *ptr = 5;
J'obtiens toujours une erreur de pointeur null.

merci beaucoup
Oui ils le font. Votre déclaration crée un pointeur, mais il ne fait pas obstacle à une variable de type int. Est-ce que votre code compile bien et sur ce que le compilateur?
  #3 (permalink)  
Old 01-24-2008
JamesGoh JamesGoh is offline
Registered User
  
 

Join Date: Nov 2007
Posts: 89
Pour le code que j'ai parlé dans mon premier post,

Code:
int *ptr=5;
le compilateur (j'utilise gcc btw), produit un avertissement disant que d'un pointeur entier a été faite sans typecast nécessaire. (shamrock m'a prévenu de cela, gcc, ce résultat a été sans doute attendu).

J'ai essayé ce

Code:
char *str="helloworld\n";
printf("string value is %s\n",*str)
et a trouvé le programme compilé correctement, mais au moment de l'exécution j'ai eu une erreur de segmentation. J'ai aussi constaté que dans le premier segment de code, si vous ignorez l'avertissement du compilateur et de lancer le programme immédiatement, vous obtenez la même erreur d'exécution.

Comme les pointeurs sont destinés à être affectés à des emplacements de mémoire (et le point de valeurs), à l'égard de cette compréhension de base et le fait que les caractères ASCII sont des adresses de mémoire, ne sont pas les deux segments de code techniquement correct?

Dernière édition par JamesGoh; au 01.24.2008 07:18 PM..
  #4 (permalink)  
Old 01-25-2008
shamrock shamrock is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2007
Lieu: États-Unis
Posts: 750
Code:
int *ptr=5;
Pointer ne peut être initialisé à zéro ou nulle si elle ne pointe pas vers une variable de ce type.

Code:
char *str="helloworld\n";
printf("string value is %s\n",*str)
Le "% s" conversion spécification argument un pointeur prend pas que le caractère * str points. Donc, si vous souhaitez imprimer à la chaîne entière ...

Code:
printf("string value is %s\n", str);
et si vous voulez imprimer le caractère * str points à ...

Code:
printf("str points to %c\n", *str);
  #5 (permalink)  
Old 01-28-2008
JamesGoh JamesGoh is offline
Registered User
  
 

Join Date: Nov 2007
Posts: 89
Citation:
Posté par shamrock View Post
Code:
int *ptr=5;
Pointer ne peut être initialisé à zéro ou nulle si elle ne pointe pas vers une variable de ce type.
Donc, c'est toujours le cas (sauf pour les chaînes définies par l'utilisateur) dans le monde réel, la programmation, même si certains caractères ASCII (comme 5) ont des adresses de mémoire?
  #6 (permalink)  
Old 01-29-2008
shamrock shamrock is offline Forum Advisor  
Registered User
  
 

Join Date: Oct 2007
Lieu: États-Unis
Posts: 750
Citation:
Posté par JamesGoh View Post
Donc, c'est toujours le cas (sauf pour les chaînes définies par l'utilisateur) dans le monde réel, la programmation, même si certains caractères ASCII (comme 5) ont des adresses de mémoire?
Oui caractères ASCII ont adresses mémoire si 5 est un entier pas un caractère ASCII. Pour être intrepreted un caractère en C, il doit être en guillemets simples.

Code:
char v = '5';
Closed Thread

Bookmarks

Thread Tools Recherche sur ce Thread
Recherche sur ce Thread:

Recherche avancée
Modes d'affichage Rate this thread
Rate this thread:

Règles de messages
Tu mai pas de nouvelles discussions: nonoui
Tu mai pas envoyer des réponses:
Tu mai pas envoyer des pièces jointes
Tu mai pas modifier vos messages

BB code est Sur
Smilies sont Sur
[IMG] code est Sur
Le code HTML est Hors tension
Trackbacks sont Sur
Pingbacks sont Sur
Refbacks sont Sur




Toutes les heures sont au format GMT -4. Le temps est maintenant 05:14 AM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traductions Langue Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Studios
Les systèmes UNIX et Linux Forums Content Copyright © 1993-2009. Tous droits Reserved.Ad de gestion par RedTyger

Content Relevant URLs par vBSEO 3.2.0