次に、#define hhh "uu"次の方法を使用して文字列を連結したい:
NSString *str [NSString stringWithFormat@"%@%@",hhh,"ii"];
しかし、コンパイルエラーが発生します。
次に、#define hhh "uu"次の方法を使用して文字列を連結したい:
NSString *str [NSString stringWithFormat@"%@%@",hhh,"ii"];
しかし、コンパイルエラーが発生します。
:最初の問題: の後にコロンがありませんstringWithFormat。2 番目の問題: 変数名strと初期化式の間に代入演算子がありません。
3 番目の問題: フォーマット文字列の 2 番目の引数@"%@%@"はプレーンな標準 C 文字列 (aka, char*) であり、フォーマット文字列はオブジェクト (aka, NSString) を呼び出します。@文字列リテラルの先頭に aを追加します。
NSString* str = [NSString stringWithFormat: @"%@%@",hhh,@"ii"];
(編集の仮定が間違っています。私は見落としましたdefine:ここでは、それhhhはオブジェクト参照であると仮定します。たとえば、id、NSString*または何か)。
hhhもプレーン文字列であるため、フォーマット文字列でプレースホルダーとして指定する必要があります%s。
NSString* str = [NSString stringWithFormat: @"%s%@",hhh,@"ii"];
@schが推奨したように。