Partage
  • Partager sur Facebook
  • Partager sur Twitter

la symbole "\n" deviendra quoi sous linux ?

ça bloque mon projet psp!

Sujet résolu
    9 mars 2008 à 14:29:04

    Salut tout le monde,
    ça fait 3 mois que j'ai commençé l'adaptation sur psp d'un jeu de quiz que je l'ai développé en premier temps sur pc intitulé "PSPQuiz" .
    Je compile mon projet en utilisant Cygwin ,qui d'aprés mes connaissances un émulateur de la console de linux.Dans un bout de mon code source , j'utilise une fonction que ed me l'a donné depuis pas mal de temps , elle sert juste à chercher puis éliminer le caractére \n dans un tableau mais malheureusement cette fonction ne fonctionne plus avec cygwin ,en d'autre terme elle n'a aucune utilité.
    voila le code source de la fonction :
    1. void fclean(FILE *fichier,char *chaine)
    2. {
    3.  char *sc=strchr(chaine,'\n');
    4.  if(sc !=NULL)
    5.  *sc=0;
    6. }

    Merci d'avance pour votre aide
    Amicalement D-POWER
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      9 mars 2008 à 14:36:05

      Comment ça, elle ne marche pas ? o_O
      A ma connaissance, '\n' est toujours le symbole New line.
      • Partager sur Facebook
      • Partager sur Twitter
        9 mars 2008 à 14:42:55

        moi aussi je suis étonné pourtant j'ai utilisé la meme fonction qd j'ai codé mon projet sur windows
        • Partager sur Facebook
        • Partager sur Twitter
          9 mars 2008 à 14:48:08

          le langage C est portable, donc les instructions basiques du langage sont les mêmes sur toutes les plateformes, une nouvelle ligne sera toujours \n
          sinon essaie ça pour la derniere ligne :
          1. (*sc) = 0 ;

          je crois que l'affectation est prioritaire sur le cast puisque ça s'execute de droite à gauche
          • Partager sur Facebook
          • Partager sur Twitter
            9 mars 2008 à 14:58:56

            vraiment c'est trés bizarre , tjs le meme probléme je comprends pas pk .
            Si vous avez d'autre solutions merci de me les proposer
            • Partager sur Facebook
            • Partager sur Twitter
              9 mars 2008 à 15:22:02

              [hs]

              Citation : Lumin0u

              sinon essaie ça pour la derniere ligne :

              1. (*sc) = 0 ;


              je crois que l'affectation est prioritaire sur le cast puisque ça s'execute de droite à gauche


              il ne s'agit pas d'un cast mais d'un déréférencement;
              l'opérateur de déréférencement est bien prioritaire sur l'affecation (cf n'importe quel tableau de priorité des opérateurs), donc les parenthèses ici ne servent à rien ;)
              [/hs]

              edit pour en dessous : y'a des machines "chelou" quand même..
              • Partager sur Facebook
              • Partager sur Twitter
                9 mars 2008 à 15:28:10

                Petit truc qui marche pas pour la "\n" sous linux. Quand on utilise le new line dans un printf par exemple il faut toujours laisser un espace entre la phrase ecrite et le "\"
                Exemple: printf("bonjour \n")
                En tout cas pour moi, ça ne marche que si je fais ça.
                • Partager sur Facebook
                • Partager sur Twitter
                  9 mars 2008 à 15:40:49

                  merci en tout cas pour vos réponses , je vais réfléchir encore un peu , peut etre je vais trouver la solution tout seul
                  • Partager sur Facebook
                  • Partager sur Twitter

                  la symbole "\n" deviendra quoi sous linux ?

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown