質問編集履歴
1
plistを win_listに修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -66,11 +66,13 @@
|
|
66
66
|
|
67
67
|
|
68
68
|
|
69
|
-
|
69
|
+
/* 間違いがありましたので修正しました 2/17 */
|
70
70
|
|
71
|
-
|
71
|
+
win_list[0][0] = &list1[0];
|
72
72
|
|
73
|
+
win_list[1][0] = &list2[0];
|
74
|
+
|
73
|
-
|
75
|
+
win_list[1][1] = &list2[1];
|
74
76
|
|
75
77
|
|
76
78
|
|
@@ -89,3 +91,47 @@
|
|
89
91
|
|
90
92
|
|
91
93
|
ご回答のほど、よろしくお願いいたします。
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
2/17 kozuchiさんご指摘により以前のコードを修正しました。plistはこちらで実験をしていた時の配列名でしたのでwin_listに変更しました。
|
98
|
+
|
99
|
+
list1とlist2は受取り先の**win_listがポインタを2つ使用していたため、
|
100
|
+
|
101
|
+
ポインタのポインタを指摘するよう、一度list1とlist2でポインタの文字列を作成した後に、**win_listの配列へそれらを入れたイメージです。
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
また、Chironianさんの回答を参考にして、自作した方の関数を修正し、受取った先での関数が動作することを確認することができました。
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
#include <stdio.h>
|
110
|
+
|
111
|
+
|
112
|
+
|
113
|
+
check_winning_lot(char **win_list[]){
|
114
|
+
|
115
|
+
printf("win_list[0][0] = %s \n", win_list[0][0]);
|
116
|
+
|
117
|
+
printf("win_list[1][0] = %s \n", win_list[1][0]);
|
118
|
+
|
119
|
+
printf("win_list[1][1] = %s \n", win_list[1][1]);
|
120
|
+
|
121
|
+
}
|
122
|
+
|
123
|
+
|
124
|
+
|
125
|
+
void main(){
|
126
|
+
|
127
|
+
char *list1[] = { "123456", NULL };
|
128
|
+
|
129
|
+
char *list2[] = { "102030", "987654" , NULL };
|
130
|
+
|
131
|
+
char **win_list[] = { list1, list2 };
|
132
|
+
|
133
|
+
|
134
|
+
|
135
|
+
check_winning_lot(win_list);
|
136
|
+
|
137
|
+
}
|