strncpy Implementation in C#



  • Hi Alle!

    Ist eine strncpy Implementation in C# möglich? Ohne Zeiger bzw unsafe :-).
    Ich hab in den google groups die Array.Copy Methode gefunden, aber könnte man auch mit Hilfe von C# eine strncpy Funktion schreiben?

    Ich wäre sehr dankbar für Eure Hilfe

    Thomas



  • Wieso sollte man das freiwillig tun wollen?- Bzw. wozu ist das nötig?
    Bei interop kann man doch soviel ich weiss direkt zu System.String marshallen lassen?



  • Hi!

    Ich würde gerne die ANSI C Funktionen in C# implementatieren einfach so aus Interesse 🙂 und mit String.Copy geht das nicht..



  • ah verschrieben ich meinte implementieren 🙂



  • So in der Art?

    void strncpy(ref string dst, string src, int num)
    {
       dst=src.Substring(0,num); // Oder z.B. String.CopyTo()
    }
    


  • Perfekt!

    Ich dachte mir schon es muss mit String.Substr funktionieren. Bei mir benützte ich zuerst Substr und dann Copy aber das ging nicht

    Vielen Dank

    Thomas



  • @Thomas25: Es gibt keinen Grund, einen String kopieren zu wollen. Zu welchem Problem soll dein strncpy die Lösung sein? Du weißt schon, dass Strings immutable sind, oder?

    strncpy kopiert außerdem normalerweise die Inhalte von char-Arrays. Wenn es dich wirklich nur interessiert, dann sollte es eher so aussehen:

    void strncpy(char[] dest, char[] src, int num);
    


  • Für garkein Problem reines Interesse 🙂

    Vielen Dank


Log in to reply