Chcę danych wejściowych od użytkownika ich nazwę i dane wyjściowe, które wprowadzają nazwę w NSLog przy użyciu NSString. Nie wiem, który znak% i jak to wypisać. Czy mogę użyć funkcji scanf() do tego? Pomóż mi, jestem dopiero początkującym w Objective-C.Jak wypisać typ NSString w funkcji NSLog w Objective-C?
Odpowiedz
Możesz użyć% @ dla wszystkich obiektów, w tym NSString. To z kolei wywoła metodę obiektów i wydrukuje odpowiedni ciąg znaków. Większość obiektów ma już dość przydatną reprezentację (np. Obiekty NSArray zwracają opisy całej ich zawartości).
JAK TO? NSLog ("% @", nazwa); ? –
Tak, 'NSLog ("% @ ", nazwa); 'działa. – progrmr
%@
jest to, co chcesz. To pasuje do obiektu jak NSString
, [YourViewController class]
NSLog
akceptuje ciąg formatu, więc można zrobić coś takiego:
#include <stdio.h>
#include <Foundation/Foundation.h>
// 1024 characters should be enough for a name.
// If you want something more flexible, you can use GNU readline:
// <http://cnswww.cns.cwru.edu/php/chet/readline/rltop.html>
#define MAX_NAME_LENGTH 1024
// Get name from user input
char name[MAX_NAME_LENGTH];
name[0] = '\0'; // just in case fgets fails
fgets(name, MAX_NAME_LENGTH, stdin);
// Put name into NSString object and output it.
NSString *name = [NSString stringWithUTF8String:name];
NSLog(@"%@", name);
%@
działa dla wszystkich obiektów Objective-C. Jeśli chcesz wypisać ciąg C (char*
lub const char*
), użyj %s
. Nigdy nie przykładaj niepustowego ciągu jako pierwszego argumentu do NSLog
, ponieważ to otwiera luki w zabezpieczeniach.
hehe! Po prostu chcę NSString z User Input. Not Char i wyjście, które NSString.i także nie chcą konwertować na NSString.Can ja to lubię. Jestem tylko początkującym. Proszę mi wyjaśnić. :) –
Nie można uzyskać NSString bezpośrednio ze standardowego wejścia (zakładając, że tego chcesz). Możesz to zrobić za pomocą 'NSFileHandle' i' NSData' jeśli chcesz, ale bezpośrednio używając 'NSString' nie jest możliwe. Zobacz przykład: http://caiustheory.com/read-standard-input-using-objective-c. –
ah! wiem . więc nie możemy uzyskać bezpośredniego wejścia String. W C# .Net możemy łatwo użyć Console.ReadLine(); . Ale w OBJC. nie możemy dostać. :(Dzięki za twoje odpowiedzi –
Aby uzyskać dane wejściowe od użytkownika, należy użyć UITextField lub NSTextField. Do wyjścia ciąg do pliku dziennika można użyć NSLog, tj:
NSString* userName = @"Zawmin";
NSLog(@"name = %@", userName);
Lub NSTextField jeśli używasz kakao –
Teraz używam wejście konsoli od użytkowników.Jak mogę to zrobić? –
@Zawmin zobacz moją odpowiedź.Za pomocą fgets uzyskać ciąg C od użytkownika Następnie konwertuje go na NSString na wyjście przy użyciu NSLog. –
Mark Dylan to nazwa, która będzie przechowywana w zmiennej Nazwa.
NSString* Name = @"Mark Dylan";
Kod ten pozwala zapytać o jego nazwisko i zeskanować go do pamięci, która będzie przechowywana w zmiennej Nazwa.
NSLog("What is your name?");
scanf("%@", &Name);
Jeśli chcesz wydrukować zmienną, której możesz użyć;
NSLog("Your name is %@", Name);
- 1. Różnica między NSLog oraz sprawozdania printf dla ObjectiveC
- 2. Wdrożenie ObjectiveC protokół w szybkim
- 3. Jak wypisać coś w PowerShell
- 4. Pozycja podłańcucha w NSString
- 5. : "niejawna deklaracja funkcji" nslog "jest niepoprawna w C99 '
- 6. Jak korzystać arrayWithContentsOfFile załadować plik z powodzeniem napisane z WriteToFile w ObjectiveC/XCode
- 7. Jak określić typ zmiennej w funkcji vim?
- 8. NSLog niepoprawne kodowanie
- 9. Jak wydrukować wartość zmiennej przez NSLog?
- 10. Sprawdzanie Typ funkcji w Scala
- 11. Jak wypisać ciąg wielowierszowy w Bash?
- 12. Jak mogę wypisać coś w Rhino?
- 13. jak wypisać kilka abonenta w kątowym 2
- 14. Jak wypisać loop.counter w szablonie python jinja?
- 15. Jak wyłączyć aplikację NSLog w całej aplikacji?
- 16. Zastąp znaki w NSString
- 17. Jak NSLog NSDate?
- 18. Czy istnieje sposób na zawinięcie bloku ObjectiveC do wskaźnika funkcji?
- 19. Drukowanie NSString
- 20. ObjectiveC Parse Integer from String
- 21. Używanie funkcji lambda C++ 11 w ARC ObjectiveC++ - jak zrobić to poprawnie?
- 22. Jak zmienić NSString w NSDate?
- 23. Jak wypisać tekst w konsoli R bez tworzenia nowych linii?
- 24. Generowanie ciągu z CLLocationDegrees, np. w NSLog lub StringWithFormat
- 25. jeśli NSString nie jest równy funkcji?
- 26. Typ funkcji z parametrami Implicit w Scala
- 27. Export typ zwracany funkcji w maszynopisie
- 28. Jak wypisać \ symbol używając cout?
- 29. Wyszukiwanie NSString w NSSet
- 30. Jak przekonwertować znak niepodpisany na NSString w iOS
See [String Specyfikatory format] (http://developer.apple.com/library/IOs/#documentation/Cocoa/Conceptual/Strings/Articles/formatSpecifiers.html) w dokumentacji. – Anna