如何推进sscanf C?
how to advance sscanf C?
我得到了一个 char* 参数。这基本上是一个由 "hex-address new_val" 组成的输入流,我需要将这两个值读取为 int*。我正在使用 sscanf() 并读取 hex-address 就好了,但我无法弄清楚如何前进以读取 new_val.No 无论我尝试了什么 - 我都会遇到段错误。这是我目前所拥有的:
int set_new_val(Cmd *cp, char *arguments) {
int* addr;
int* val;
sscanf(arguments, "%x",&addr);
sscanf(arguments+?????, "%x",&val);
/*see if I read it correct*/
printf("adr = %x || val = %x\n",(unsigned int)*addr,(unsigned int)*val);
/*not finished*/
return 0;
}
int地址,val; // 不是 int*
sscanf(参数, "%x %x",&addr, &val);
printf("adr = %x || val = %x\n", 地址, 值);
我得到了一个 char* 参数。这基本上是一个由 "hex-address new_val" 组成的输入流,我需要将这两个值读取为 int*。我正在使用 sscanf() 并读取 hex-address 就好了,但我无法弄清楚如何前进以读取 new_val.No 无论我尝试了什么 - 我都会遇到段错误。这是我目前所拥有的:
int set_new_val(Cmd *cp, char *arguments) {
int* addr;
int* val;
sscanf(arguments, "%x",&addr);
sscanf(arguments+?????, "%x",&val);
/*see if I read it correct*/
printf("adr = %x || val = %x\n",(unsigned int)*addr,(unsigned int)*val);
/*not finished*/
return 0;
}
int地址,val; // 不是 int*
sscanf(参数, "%x %x",&addr, &val);
printf("adr = %x || val = %x\n", 地址, 值);