Quellcode durchsuchen

解决读文件不存在时报段错误

master
17607550577 vor 4 Jahren
Ursprung
Commit
ef409f5d34
3 geänderte Dateien mit 11 neuen und 18 gelöschten Zeilen
  1. 1
    2
      Makefile
  2. BIN
      server-monitor
  3. 10
    16
      server-monitor.c

+ 1
- 2
Makefile Datei anzeigen

@@ -1,6 +1,5 @@
1 1
 cc  = gcc 
2
-cflags = -lmosquitto -lpthread -ldl
3
-
2
+cflags = -Wall -lmosquitto -lpthread -ldl -I /root/x86/mqtt_install/root/x86/mqtt_install/include -L /root/x86/mqtt_install/root/x86/mqtt_install/lib
4 3
 main:
5 4
 	$(cc) server-monitor.c -o server-monitor $(cflags)
6 5
 	

BIN
server-monitor Datei anzeigen


+ 10
- 16
server-monitor.c Datei anzeigen

@@ -107,11 +107,7 @@ int main(int argc, char *argv[])
107 107
     }
108 108
 
109 109
     /* 硬盘温度获取 */
110
-    if (get_sata_hddtemp(device, &hdd_temp) < 0)
111
-    {
112
-        hdd_temp = 0;
113
-        exit(-1);
114
-    }
110
+    get_sata_hddtemp(device, &hdd_temp);
115 111
 
116 112
     //初始化lib库函数
117 113
     mosquitto_lib_init();
@@ -147,20 +143,19 @@ int main(int argc, char *argv[])
147 143
         sleep(5);
148 144
         /* cpu温度获取 */
149 145
         fp = fopen (CPU_TEMP_FILE1, "r");
150
-        if (fp < 0)
146
+        if (NULL == fp)
151 147
         {
152 148
             printf("open file failed,%s\n", strerror(errno));
153
-            continue;
154 149
         }
155
-        // rewind(fp);
156
-        fscanf(fp, "%d", &cpu_temp);
157
-        fclose(fp);
158
-
150
+	else
151
+	{
152
+		 // rewind(fp);
153
+ 	         fscanf(fp, "%d", &cpu_temp);
154
+        	 fclose(fp);
155
+	}
156
+        
159 157
         /* 硬盘温度获取 */
160
-        if (get_sata_hddtemp(device, &hdd_temp) < 0)
161
-        {
162
-            hdd_temp = 0;
163
-        }
158
+	get_sata_hddtemp(device, &hdd_temp);
164 159
 
165 160
         /* 发送mqtt消息到服务器 */
166 161
         sprintf(content, "{\"cpu_temp\" : \"%d\", \"hdd_temp\" : \"%d\", \"cpu_rate\" : \"%0.2f\", \"mem_rate\" : \"%0.2f\"}", 
@@ -989,7 +984,6 @@ int get_sata_hddtemp(char *device, int *value)
989 984
     }
990 985
     */
991 986
 
992
-
993 987
     int fd = 0;
994 988
     fd = open(device, O_RDONLY | O_NONBLOCK);
995 989
 

Laden…
Abbrechen
Speichern