noVa_dna Geschrieben 20. April 2002 Teilen Geschrieben 20. April 2002 Hi, ich kriege immer einen Fehler "[Fehler] Unit2.pas(76): Inkompatible Typen: 'String' und 'PChar'" was kann ich dagegen tun? Ist das so ähnlich wie bei IntToStr? thx cu Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
beetFreeQ Geschrieben 20. April 2002 Teilen Geschrieben 20. April 2002 Der Syntax zufolge gehe ich mal von Delphi aus... - Wo bekommst Du die meldung denn? Ein Quellcode-Ausschnitt bzw. die betroffenen Variablen/Komponenten etc wären schon hilfreich! Allgemein läßt sich aber sagen, daß ein PCahr halt nur ein Zeichen ist während ein String eine Zeichenfolge (bzw. ein Array von Zeichen) ist. Weiß aber leider grad nicht, ob und wie man da was umwandeln kann. Vielleicht kannst Du es ja mal über eine Variable vom Typ Variant versuchen... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Orffi Geschrieben 20. April 2002 Teilen Geschrieben 20. April 2002 Ich war immer der Meinung, daß PChar ein Zeiger auf ein Zeichen ist. Ich habe eben im C++Builder (obwohl PChar ursprünglich von Delphi stammt, kennt der C++Builder PChar) nachgesehen und der "behauptet" dasselbe. PChar ist also nicht ein einzelnes Zeichen, sondern ein Zeiger auf ein Zeichen. Das ist ein sehr wichtiger Unterschied. Jan Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
noVa_dna Geschrieben 20. April 2002 Autor Teilen Geschrieben 20. April 2002 jo thx leute habs hinbekommen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
progmaker Geschrieben 24. April 2002 Teilen Geschrieben 24. April 2002 PChar in String kann man ganz leicht umwandeln. Das geht mit PChar(String). Ob's auch umgekehrt geht, weiß ich noch nicht. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
MarcG Geschrieben 24. April 2002 Teilen Geschrieben 24. April 2002 PChar ist die Delphi-Version des C-Strings, also ein String geht solange bis ein #0 kommt (ASCII 0). Beim einem Delphi String steht am Anfang die Anzahl der Zeichen die der String lang ist. Um aber Win-APIs zu benutzen (oder auch C-Dlls) braucht man eben nullterminierte Strings und das sind eben PChars. Stings bei C sind übrigens keine Strings an sich sondern Arrays of Char und PChar wie man vom Namen her vermuten könnte ein Pointer auf Char also auf den ersten Char des Arrays. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.