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++

tauruxbis
tauruxbis
Niveau 10
12 juin 2006 à 16:14:43

oui oui, je veux renvoyer la valeur en utilisant un pointeur, mais maintenant que j´ai mis %lf et que j´ai mis void (pas de retour), ça marche, merci !

Choubib2
Choubib2
Niveau 6
12 juin 2006 à 19:51:07

Salut ou esque je pourait trouver un bon tuto sur le C et le C++ ainsi que sur Visual C++ ?

Merci d´avance

tauruxbis
tauruxbis
Niveau 10
12 juin 2006 à 19:53:04

dans le postit , je crois qu´il y a ce que tu cherches..

tauruxbis
tauruxbis
Niveau 10
12 juin 2006 à 22:14:23

alors j´ai essayé de recreer la fonction strcpy de string.h , mais le compilateur me met une erreur : il attend quelque chose entre les crochets j´ai cru comprendre, mais ça serait idiot de mettre un nombre, car ça renverrai simplement le caractere qui est a cet emplacement non ?

  1. include <stdlib.h>
  2. include <stdio.h>
  3. include <iostream>

using namespace std;

char cCpy(char chaine[], char copy[]);
int main()
{
char chaine[] = "Diego";
char copy[100] = {0};
copy[100] = cCpy(chaine, copy);
printf("\nchaine vaut : %s\ncopy vaut : %s", chaine , copy);
system("pause");
return 0;
}
char cCpy(char chaine[], char copy[])
{
for(int i=0;i!=´\0´;i++)
{
copy[i]=chaine[i];
}
return copy[];
}

23 expected primary-expression before ´]´ token

(c´est donc la ligne ou il y a le retour de copy[])

dnob700
dnob700
Niveau 10
12 juin 2006 à 22:48:13

la syntaxe "char chaine[]" n´est valable que pour les paramètre d´une fonction.

Mias sinon, une chaine de caractère est de type "char*" : un pointeur vers des caractères.

Donc ta fonction doit être :
char* cCpy(char chaine[], char copy[])
et non :
char cCpy(char chaine[], char copy[])

et à la fin, tu renvoie le pointeur, c´est-à-dire l´adresse du premier élément de la chaine : return &copy[0]
ou alors, plus simplement :
return copy;
Car copy est déjà un pointeur vers le premier élément de la chaine (et copy[n] est équivalent à : (*(copy+n)).

Mais comme de toute manière ta chaines est modifié, tu peut aussi retourner par exemple le nombre de caractères copiés, etc.

A noté que le test d´arret de ta fonction est faux (c´est chaine[i]!=0 et non pas i!=0 qu´il faut tester).

tauruxbis
tauruxbis
Niveau 10
12 juin 2006 à 22:52:26

ok merci

tauruxbis
tauruxbis
Niveau 10
13 juin 2006 à 11:34:23

par contre, pour appeler la fonction on fait comment ?

avec ça :

copy = cCpy(chaine, copy);

12| incompatible types in assignment of `char*´ to `char[100]´

et avec ça :

&copy[0] = cCpy(chaine, copy);

12| non-lvalue in assignment

Fvirtman
Fvirtman
Niveau 10
13 juin 2006 à 11:58:05

Tu ne peux pas retourner de tableaux statique.

Ton unique moyen de modifier un tableau statique est de le passer en parametre, puis de le modifier dans ta fonction :

void cCpy(char chaine[], char copy[],char res[])

la, dedans, tu peux modifier res si tu veux.

Lapintade
Lapintade
Niveau 30
13 juin 2006 à 12:02:44

J´ai pas tout suivi, mais le mieux c´est de tout gerer avec des pointeurs.

  1. include <stdlib.h>
  2. include <stdio.h>
  3. include <iostream>

using namespace std;

void cCpy(char* chaine, char* copy);

int main()
{
char chaine[] = "Diego";
char copy[100] = {0};
cCpy(chaine, copy);
printf("\nchaine vaut : %s\ncopy vaut : %s", chaine , copy);
system("pause");
return 0;
}
void cCpy(char* chaine, char* copy)
{
for(int i=0;i!=´\0´;i++)
{
copy[i]=chaine[i];
}
return;
}

Comme il a deja été dit, si on defini un tableau avec chaine[100], en utilisant le mot "chaine" tout seul ca equivaut a un pointeur sur le premier element, comme &(chaine[0])

dynoplasmma
dynoplasmma
Niveau 9
13 juin 2006 à 15:03:56

Bonjours :)
Je suis en train de gerer le son avec FMOD, j´hesite entre deux possibilités :

Premiere)...........

boucle infinie
{
jouer son;
}

Deuxieme)............

int k=0;
boucle infinie
{
if(k==0)jouer son, k++;
}

------

En gros, avec la premiere methode, chaque tours de boucle, on lit le son, tandis que dans la deuxieme methode, une fois que le son est lancé, on s´en occupe plus.

Je pense que les deux methodes fonctionnent, mais laquelle permet de jouer un meilleure son ?
D´utiliser moin de CPU ?

Merci d´avance :p)

Lapintade
Lapintade
Niveau 30
13 juin 2006 à 15:26:31

Tu ne peux pas faire une boucle infinie dans ton code, ca bloque tout. L´idée quand tu utilise fmod c´est d´appeller les fonction de la lib quand tu en a besoin, et "jouer en boucle" doit surement etre une fonction que tu dois appeller quand tu veux jouer ton son la premiere fois (donc ta solution 2)

dynoplasmma
dynoplasmma
Niveau 9
13 juin 2006 à 15:34:20

Oui, mais j´integre un son dans mon jeu, boucle infinie obligatoire !
Merci pour ta reponse en tout cas :)

dynoplasmma
dynoplasmma
Niveau 9
13 juin 2006 à 23:14:28

Bsoir, le son joué par FMOD est mauvais, meme en baissant la frequance de mixage a 10 000 au lieu de 44 100...

Voici le code :
http://wall.wouf.biz/?voir;2316

Mon PC est vieux, j´ai surement une mauvaise carte graphique, mais j´ai testé sur un PC plus recent, le son etait pas si bon que ca, il deconnait juste un peut moin.

Merci de m´eclairer a ce sujet :)

dynoplasmma
dynoplasmma
Niveau 9
13 juin 2006 à 23:15:18
  • carte son
Lapintade
Lapintade
Niveau 30
14 juin 2006 à 01:07:27

En premier lieu fait determiner si ca vient de ton materiel ou de ton code. Prends un exemple fmod qui fonctionne et regarde si il passe bien sur ton pc, si oui alors c´est ton code qu´est moisi.

dynoplasmma
dynoplasmma
Niveau 9
14 juin 2006 à 11:38:34

Je viens de trouver.
Tout ca est due au fait que je tourne sans cesse ma boucle dans le menu, avec un PollEvent, alors que je devrais utiliser un WaitEvent dans ces menus.
Plus qu´a changer ca et c´est parfait pour le son :)

Dans la phase de jeu, PollEvent obligatoire, je n´y met que des bruitages, ca fonctionne.

1465de
1465de
Niveau 10
15 juin 2006 à 12:05:01

J´ai un problème je suis débutant de chez débutant:
une chaîne de caractère par exemple:
char phrase[200+1];
Y´a t´il moyen à partir de cette chaîne de récupérer les caractères un par un?
Je voudrais en fait ajouter à la valeur ASCII de chaque lettre 10...(120+10) par exemple^^

DrTenma
DrTenma
Niveau 6
15 juin 2006 à 12:09:22

phrase[i] pour acceder au caractere d´indice i

1465de
1465de
Niveau 10
15 juin 2006 à 12:15:49

Merci beaucoup ;) !

dynoplasmma
dynoplasmma
Niveau 9
18 juin 2006 à 20:37:45

Bonsoir :)
J´aimerais avoir un renseignement, si c´est possible, car la reponse ne doit pas etre connue de tous.

Bon deja, la biblioteque stdio est constitué d´un fichier.h, et aussi d´autre chose, un fichier.lib OU un fichier.a ou bien les deux ou encore d´autre ?

Et voila ma principal question, comment ecrire en mode console le caractere "a" sans inclure aucunes biblioteques ?

C´est vraiment inutile, mais ca me permettrais de comprendre un peu comment ca fonctionne "derriere".
La c´est comme si je suis sur un velo qui avance, mais c´est pas moi qui pedale...

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