我有结构输入参数及其名为productId | sortKey | GSI1 |
1234232 | event#123232323 | | price1 | orders1 | rating1 | rating_count1 | created_at1
1234232 | event#123232327 | | price2 | orders2 | rating2 | rating_count2 | created_at2
1234232 | category#father | Father | <other properties of category>
1234232 | category#kitchen| kitchen | <other properties of category?>
的数组。我想用文本填充数组,因为它为id提供了错误的值,并且可以正确使用名称,并且在input_arr
中什么也没有出现。
visible
用文本填充#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct input_parameter {
int id;
char name[30];
int position;
char visible[5];
char required[5];
char parameter_type;
char client_id[5];
int min_length;
int max_length;
char confirm_required[5];
};
struct input_parameter input_arr[10];
char text[2*1024]="{\"success\": true,\"language\":
\"en\",\"action\":
\"GetServiceInputParameterList\",\"version\": 1,\"data\": {
\"input_parameter_list\": [{\"id\": 1489,\"service_id\":
12102,\"name\": \"Customer Number\",\"position\":
1,\"visible\":
true,\"required\": true,\"parameter_type\":
\"N\",\"client_id\":
true,\"min_length\": 11, \"max_length\":
11,\"confirm_required\":
false } ] }}";
的数组:
struct
答案 0 :(得分:1)
好吧,您正在打印id
的地址,而不是使用%d
格式说明符的值。
printf("id:%d\nname: %s\n visible: %d\n",&input_arr[0].id,&input_arr[0].name,&input_arr[0].visible);
应该是
printf("id:%d \n name: %s \n visible: %d\n",input_arr[0].id,input_arr[0].name,input_arr[0].visible);