回答編集履歴
1
参考コード追記
test
CHANGED
@@ -41,3 +41,71 @@
|
|
41
41
|
具体的にどう書き換えるかは、全体の流れを見直す事が必要です。
|
42
42
|
|
43
43
|
(このコードの流れで書き換えるのはちょっと大変か?)
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
中のwhile() 内について、ちょっと参考コード。こんな感じかという事で。
|
48
|
+
|
49
|
+
```C
|
50
|
+
|
51
|
+
while(cp!=NULL){
|
52
|
+
|
53
|
+
cp = strtok(NULL,sikiri);
|
54
|
+
|
55
|
+
if(cp!=NULL&&c==0){
|
56
|
+
|
57
|
+
strcpy(log[i].server_name,cp); //ここでサーバーの名前を挿入
|
58
|
+
|
59
|
+
//// ここから 対応するサーバー番号を探す hに設定 (無い場合は? ...)
|
60
|
+
|
61
|
+
// for(h=0;h<4;h++){
|
62
|
+
|
63
|
+
// if(strcmp(log[i].server_name, name[h])==0) break;
|
64
|
+
|
65
|
+
// }
|
66
|
+
|
67
|
+
}
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
if(cp!=NULL&&c==1){
|
72
|
+
|
73
|
+
strcpy(log[i].result,cp);//ここで結果を挿入
|
74
|
+
|
75
|
+
if(strncmp(log[i].result,"-",1)==0){ //1."-"かどうか
|
76
|
+
|
77
|
+
//// 障害が発生した場合には、それを記録 サーバー番号 h
|
78
|
+
|
79
|
+
// if (!han[h].count) { // ただし、最初に初期化で false としておく
|
80
|
+
|
81
|
+
// han[h].count = true;
|
82
|
+
|
83
|
+
// han[h].time = log[i].time
|
84
|
+
|
85
|
+
// }
|
86
|
+
|
87
|
+
}else{
|
88
|
+
|
89
|
+
//// 前回が障害の場合の処理
|
90
|
+
|
91
|
+
// if (han[h].count) {
|
92
|
+
|
93
|
+
// kikan=log[i].time - han[h].time;
|
94
|
+
|
95
|
+
// printf("サーバー%sが故障状態です\n",han[h].handan_name);
|
96
|
+
|
97
|
+
// printf("log.time is %ld\nhandan is %ld\n",log[i].time,han[h].time);
|
98
|
+
|
99
|
+
// printTime(kikan);
|
100
|
+
|
101
|
+
// han[h].count = false;
|
102
|
+
|
103
|
+
// }
|
104
|
+
|
105
|
+
}
|
106
|
+
|
107
|
+
}
|
108
|
+
|
109
|
+
}
|
110
|
+
|
111
|
+
```
|