Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 2 sur 2

Discussion: le backslash malin

  1. #1
    Invité de passage
    Homme Profil pro
    Étudiant
    Inscrit en
    avril 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Israël

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : avril 2011
    Messages : 1
    Points : 0
    Points
    0

    Par défaut le backslash malin

    Afin d'écrire un backslash il faut, de ce que j'ai compris, faire escape par un premier backslash et ensuite seulement mettre celui qu'on veut voir affiché.

    seulement voilà:

    *Main> "C:\\Haskell" ++ "\\meuh"
    "C:\\Haskell\\meuh"
    *Main> "C:\Haskell" ++ "\meuh"


    <interactive>:1:4:
    lexical error in string/character literal at character 'H'
    et le résultat attendu est bien évidemment:
    C:\Haskell" ++ "\meuh

    une solution "bricolage" et de changer le nom du fichier de sorte à ce qu'il commence par une lettre comme a

    *Main> "C:\aHaskell" ++ "\ah"
    "C:\aHaskell\ah"
    mais vous comprenez que lorsque que l'on se sert de fichier externes de manière plus complexe c'est assez embêtant.

    Auriez-vous une solution plus standard?

  2. #2
    LLB
    LLB est déconnecté
    Membre Expert
    Inscrit en
    mars 2002
    Messages
    962
    Détails du profil
    Informations forums :
    Inscription : mars 2002
    Messages : 962
    Points : 1 263
    Points
    1 263

    Par défaut

    Il affiche la chaîne en utilisant le format des chaînes Haskell, regarde il met aussi des guillemets, alors qu'ils n'en font pas partie. C'est le comportement de l'interpréteur. Je parie que tu obtiens le comportement désiré si tu affiches la chaîne avec putStr.

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •