Ich möchte meinen NSString auf ein konstantes Zeichen umwandeln Der Code ist unten gezeigt:
%Vor%jedoch gibt es die Warnung zurück Zuweisung macht Integer aus Zeiger ohne eine Besetzung und kann den char nicht richtig drucken, kann jemand mir sagen, was das Problem ist
Versuchen Sie etwas mehr wie folgt:
%Vor%Sie müssen char * anstelle von char verwenden, und Sie müssen C-Zeichenfolgen mit% s not% @ drucken (% @ ist nur für Ziel-c-ID-Typen).
Ich glaube, du willst Folgendes verwenden:
%Vor%(beachte das * darin)
Ihr Code hat 2 Probleme:
1) "char datechar ..." ist ein einzelnes Zeichen, das nur ein Zeichen / Byte enthält und nicht das gesamte Array enthält, das Sie aus Ihrem Datum / String-Objekt erzeugen. Daher sollte Ihre Zeile ein (*) vor der Variablen haben, um mehrere Zeichen statt nur eines zu speichern.
2) Nach dem obigen Fix erhalten Sie immer noch eine Warnung über (char *) vs (const char *), daher müssten Sie "casten", da sie technisch die gleichen Ergebnisse sind. Ändern Sie die Zeile von:
char datechar = [date UTF8String];
in
char *datechar = (char *)[date UTF8String];
Beachten Sie (char *) nach dem = -Zeichen, teilt dem Compiler mit, dass der Ausdruck ein (char *) im Gegensatz zu seinem Standard (const char *) zurückgeben würde.
Ich weiß, dass Sie die Antwort schon früher markiert haben, aber ich dachte, ich könnte dazu beitragen, die Probleme zu erklären und nähere Einzelheiten zu klären.
Ich hoffe, das hilft.
Herzliche Grüße Heider
Tags und Links objective-c iphone