CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

J´aide les personne en C/C++

godrik
godrik
Niveau 30
10 février 2007 à 13:05:01

Tu écris:
printf("Pointeur est enregistre a l´adresse : %ld\n", &Pointeur); //Mais ca vous savez on s´en fou de son adresse.

Je ne susi pas d´accord.
On ne s´en fout pas du tout.
Il faut bien comprende qu´un pointeur est une variable COMME LES AUTRES. et que donc elle a type, une valeur et une adresse. Et que cette adresse tu peux la mettre dans uen variable. Qui elle aussi aura, un type, une valeur, et une adresse. ...

Je pense que le principal probleme avec les pointeur est que les gens penses que c´est une variable pas comme les autres.
Alors qu´elle obéit au meme regle que les autres.

Friko_party3
Friko_party3
Niveau 5
10 février 2007 à 13:55:29

oué mé il voulé ptete dire ke on s´en sert pa vraiment de son adresse :ok:

godrik
godrik
Niveau 30
10 février 2007 à 15:20:03

c´est pas completement vrai, on s´en sert souvent. par exemple il est classique de passer un pointeur sur une chaine de caractere.

Fvirtman
Fvirtman
Niveau 10
10 février 2007 à 17:54:03

jks5 & godrik > cela dit, meme si certaines choses sont décrites comme inutiles, alors qu´elles peuvent etre utiles, je trouve ce petit programme tres pédagogique :ok:

godrik
godrik
Niveau 30
11 février 2007 à 10:48:40

tu devrais réinstaller code::blocks je penses.
Je n´ai pas entendu parler de bug dans ce genre avec vista.
ils n´ont d´ailleurs pas forcément de raison d´apparaitre. Que tu sois sous vista ou pas, la libc devrait toujours marcher.

jks5
jks5
Niveau 4
11 février 2007 à 11:28:23

enfin j´essayais d´aider moi hein :ok:

godrik
godrik
Niveau 30
11 février 2007 à 11:36:32

jks5, nan mais c´est bien ton exemple. Je trouve ca un peu extreme de dire que les pointeur de pointeur ne servent a rien.
Je penses meme que leur existence explique beaucoup de chose.

dans le genre qui fait reflechir aussi
Tout le monde sait que a[2] == *(a+2)
mais l´addition est commutative donc *(a+2) == *(2+a)
et comme on a *(2+a) == 2[a]
Finalement on a a[2] == 2[a]

sisi c´est vrai! :)quand on dit que c´est pareil un tableau et un pointeur! :)

UnKnOwN_DrAgOoN
UnKnOwN_DrAgOoN
Niveau 8
11 février 2007 à 18:39:47

Je te remercie mais j´ai déja essayé :) et puis je ne suis pas le seul à avoir ce problème...bon et bien en attendant que MS ne se décide, moi je retourne compiler sous Linux.

dnob700
dnob700
Niveau 10
12 février 2007 à 00:19:54

"quand on dit que c´est pareil un tableau et un pointeur!"

sauf que ce n´est pas exactement pareil, au sens ou

int *table=(int*)malloc(100*sizeof(int));

n´est pas équivalent à :
int table[100];

dans le premier cas tu a un pointeur qui pointe vers un tableau, alors que dans le second, il y a juste un tableau, mais pas de pointeur (et la variable table n´existe pas), même si on peut souvent manipuler l´un comme si c´était l´autre.

franco01
franco01
Niveau 7
16 février 2007 à 17:15:57

J´ai une petite question que je me pose depuis quelques temps deja.

Par exemple, je veux passer un objet en parametre d´une fonction afin d´affecter certaines valeurs à un objet quelconque.

Quand dois-je envoyer une référence sur un objet, ou un pointeur sur cet objet. Quel est le plus rapide pendant l´execution?

Car si on envoi comme parametre une référence, on envoi tout l´objet entier donc je me demande si c´est plus lourd que d´envoyer juste un pointeur qui est que l´adresse de l´objet?

godrik
godrik
Niveau 30
16 février 2007 à 22:10:45

Si tu l´envoie par valeur, tu ne pourras pas le modifier.

Apres référence et pointeur c´est pareil après compilation. les deux prennet sizeof(void*) octet a passer.

trunks_the_boss
trunks_the_boss
Niveau 9
26 février 2007 à 20:05:43

Salut!
J´ai essayé de faire des programmes sans les directives de prépossesseur <stdio.h> et <stdlib.h> et il fonctionne.

Ces bibliothèques sont-elles superflues? :o

elhuron
elhuron
Niveau 6
26 février 2007 à 20:38:28

Faudrais que tu nous montre ton programme, un basique fonctionne sans probleme sans rien y inclure :

int main(void)
{
int a=10;
char nom[200]="Ramses";
return 0;
}

Par contre pour les fonctions d´affichage par exemple, il faut inclure stdio/iostream, etc...

Fvirtman
Fvirtman
Niveau 10
26 février 2007 à 23:17:42

Il te suffit de regarder la liste des fonctions dans stdio et stdlib :
http://www.infini-fr.com/Sciences/Informatique/Langages/Imperatifs/C/Api/stdio.html
(a gauche, tu choisis stdio, stdlib, et d´autres)

pour savoir si tu dois inclure le tel header ou pas. Si tu utilises une des fonctions, alors il faut inclure le header.

Il est possible que ton compilo reconnaisse, par exemple, printf sans stdio, mais dans ce cas, c´est un compilo non standard : en théorie, si tu n´inclus pas stdio, tu n´as pas printf.

Apres, il faut voir quelles fonctions tu as utilisé bien sur :)

J´ajoute que si tu inclus "truc.h" et que "truc.h" inclus lui meme stdio.h, alors stdio sera inclus :)

trunks_the_boss
trunks_the_boss
Niveau 9
28 février 2007 à 11:17:55

Ben, voila mes fonctions utilisée:
printf, scanf.

Lapintade
Lapintade
Niveau 30
28 février 2007 à 14:49:44

sans les directives de prépossesseur <stdio.h>
et <stdlib.h> et il fonctionne.

"directive" c´est un bien grand mot.
Le mot "include" sert simplement a importer un bout de texte dans ton programme.
Tu peux importer n´importe quoi.
Dans le cas des .h, ca sert a importer la definition des fonctions qui correspondent a la lib associée. (on appelle ca des "prototypes").

Ces bibliothèques sont-elles superflues? :o

Ici on parle de .h, donc simplement de definition de fonctions. Les .h ne sont pas une librairie, juste un petit fichier texte.

Avec les .h, ca te permets de compiler dans le cas ou tu utilise une fonction comme printf, qui est definie dans stdio.h.
Si tu as printf dans ton programme, que tu enleve include stdio.h et que ca marche toujours, ca veut dire que stdio.h est inclu automatiquement ou par un autre .h comme dis Fvirtman.

C´est la meme chose pour les libs. Pour utiliser printf, tu dois linker avec libc, mais souvent les projet sont definis de tel sorte que le link est automatique.

godrik
godrik
Niveau 30
28 février 2007 à 15:38:08

gcc a un built-in qui intègre tout seul printf et cie...
mais il préviens a la compilation qu´il l´a fait. et c´est désactivable avec ´je ne sais plus quelle option´

Runo
Runo
Niveau 5
28 février 2007 à 15:44:12
Lapintade
Lapintade
Niveau 30
28 février 2007 à 15:46:24

Belle presentation.

Par contre pour "esclusive" , je dirai plus "exclusive". :ok:

Runo
Runo
Niveau 5
28 février 2007 à 16:18:48

Merci, ca fait toujours plaisir de lire ce genre de messages
(j´ai attendu presque 2ans, et il y a toujour pas de programmeur )

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment