noVa_dna Geschrieben 20. April 2002 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
beetFreeQ Geschrieben 20. April 2002 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
Orffi Geschrieben 20. April 2002 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
noVa_dna Geschrieben 20. April 2002 Autor Geschrieben 20. April 2002 jo thx leute habs hinbekommen Zitieren
progmaker Geschrieben 24. April 2002 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
MarcG Geschrieben 24. April 2002 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
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.