Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使用格式说明符将字符串解压到对象数组中_Objective C_Cocoa_Nsstring - Fatal编程技术网

Objective c 使用格式说明符将字符串解压到对象数组中

Objective c 使用格式说明符将字符串解压到对象数组中,objective-c,cocoa,nsstring,Objective C,Cocoa,Nsstring,有没有办法根据多个格式说明符将字符串转换为不同数据类型的对象数组 我尝试了initWithFormat:arguments:,但没有得到预期的结果。 Python中的struct模块中有一个类似的函数,unpack(fmt,String),其中fmt是格式说明符字符串,String是要转换的字符串 查看sscanf: void unpackStr(NSString *string, NSString *format, ...) { va_list args; va_start(a

有没有办法根据多个格式说明符将字符串转换为不同数据类型的对象数组

我尝试了
initWithFormat:arguments:
,但没有得到预期的结果。
Python中的
struct
模块中有一个类似的函数,
unpack(fmt,String)
,其中
fmt
是格式说明符字符串,
String
是要转换的字符串

查看
sscanf

void unpackStr(NSString *string, NSString *format, ...)
{
    va_list args;
    va_start(args, format);

    vsscanf([string UTF8String], [format UTF8String], args);

    va_end(args);
}

那么您需要的是NSString的
scanf
函数?我想您需要
NSScanner
。下面是一个例子:您好,您提供的代码没有给出预期的结果。我做了一个测试来显示一个字符串**123495885aaaaa,但结果是**26867122686712410085768676026867125339441727800024pyõfÀYõf°SõfpRõf Rõf�Qõf Qõf**您将以何种格式发送到
args
?你读过sscanf文档吗?我在va_列表之前添加了printf命令,用于格式和字符串,在va_结束之前添加了一个printf,输出如下
格式:%I%I%I%I%I%I%I%I%5s
字符串:123495885aaaaaa
值:268672822686728 0 1728095392 1727081904 2686728 1728095392 1727996152 PYõõfõfõfpRõf Rõf�Qõf Qõf