Hallo, ich habe folgendes (an sich triviale) Problem:
Ich möchte 2 PChar Werte miteinander vergleichen, allerdings ist der Vergleich False obwohl beide Werte gleich sind.
Hier mal der Code:
Delphi-Quellcode:
procedure SetRegisterValue(var CPU :TCPU; RegisterName :PChar; NewValue :PChar);
var i :Integer;
rname:PChar;
begin
i := 0;
While (i < Length(CPU.Registers)) do
begin
rname := CPU.Registers[i].Name;
if rname = RegisterName then // <- Immer False
begin
CPU.Registers[i].Value := NewValue;
Break;
end;
Inc(i);
end;
end;
Aufruf:
SetRegisterValue(CPU, 'A', '10');
Wenn ich den Vergleich mit pos() mache funktioniert es seltsamerweise.