IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

Caractère de fin de chaine par défaut C#


Sujet :

C#

  1. #1
    Futur Membre du Club
    Inscrit en
    Mai 2009
    Messages
    16
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 16
    Points : 9
    Points
    9
    Par défaut Caractère de fin de chaine par défaut C#
    Bonjour,

    Je dois porter une application qui fait de la communication serie du C# vers le C (sous linux). Mon problème étant : quel est le caractère de fin de chaîne par défaut du C# ? LF ? CR-LF ? NL ?

    Voila merci par avance.

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    sous linux \n
    sous windows \r\n
    sinon tu peux utiliser mono pour porter ton projet sous linux
    en esperant que cela puisse t'aider

  3. #3
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    Citation Envoyé par charter Voir le message
    Bonjour,

    Je dois porter une application qui fait de la communication serie du C# vers le C (sous linux). Mon problème étant : quel est le caractère de fin de chaîne par défaut du C# ? LF ? CR-LF ? NL ?

    Voila merci par avance.
    si je me rappelle bien, ce n'est pas le caractère de fin de C#, mais du systeme qui fait tourner le processus...

    donc, si windows, CR-LF

  4. #4
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Sinon on peut aussi ne pas se fatiguer et utiliser Environment.NewLine

  5. #5
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Il faudrait quand même préciser que ce caractère de fin de chaine n'existe que pour une chaine dans un fichier texte et contrairement au C/C++ il n'existe pas de caractère de fin de chaine en mémoire, puisque la longeur de la chaine est une propriété de l'objet.

  6. #6
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Ce que tu dit est vrai tant que tu ne fais pas de l'interop. Sinon finir les chaines par le /0 est parfois nécessaire.

  7. #7
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Points : 13 317
    Points
    13 317
    Par défaut
    Citation Envoyé par smyley Voir le message
    Ce que tu dit est vrai tant que tu ne fais pas de l'interop. Sinon finir les chaines par le /0 est parfois nécessaire.
    Je n'ai jamais écrit que ce n'était pas nécessaire à l'occasion (quoique dans ce cas là , j'ajouterais plutôt une class "stringC" ou quelque chose d'approchant pour isoler l'emploi de ces 0 binaires surnuméraires, afin qu'ils ne viennent pas polluer le reste de l'application) mais juste qu'un objet String en C# n'a pas de caractère de fin de chaine.

    Si tu ajoute un 0 binaire à une chaine C# la longueur de la chaine pour un consommateur C# s'incrémente de 1.

    L'interprétation comme fin de chaine de ce caractère sera strictement réservé aux APIs appelé via l'interop, pas du tout par les consommateurs C# (ou .net plus largement) qui verront ton 0 comme partie intégrale de la chaine (ce qui n'est certainement pas souhaitable).

  8. #8
    Expert éminent
    Avatar de smyley
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    6 270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 6 270
    Points : 8 344
    Points
    8 344
    Par défaut
    Je n'ai pas dit que tu n'avais pas raison, j'ai juste dit que pour l'interop, ça pouvais parfois poser problème. Peut être que ça sert à rien dans le cadre actuel, mais peut être un futur problème fera remonter cette hypothèse

Discussions similaires

  1. [RegEx] Supprimer les caractères en fin de chaine ?
    Par tintin72 dans le forum Langage
    Réponses: 8
    Dernier message: 05/04/2008, 12h15
  2. Dll C++ - Caractère de fin de chaine
    Par waw_41 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 11/12/2007, 18h03
  3. Réponses: 9
    Dernier message: 31/07/2007, 01h13
  4. Chaine littérale en tant qu'argument par défaut
    Par Daemonovae dans le forum C++
    Réponses: 3
    Dernier message: 24/11/2006, 20h27
  5. Réponses: 2
    Dernier message: 18/10/2003, 14h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo