So verwenden Sie das Schreiben von Dateien zum Debuggen einer Linux-Anwendung

So verwenden Sie das Schreiben von Dateien zum Debuggen einer Linux-Anwendung

Unter Linux ist alles eine Datei, daher besteht das Android-System selbst lediglich aus Linux+Java und läuft auch in der Linux-Umgebung.

Normalerweise verwenden wir printf beim Debuggen von Programmen.

Unter Android verwenden wir logcat. Jetzt stelle ich Ihnen eine häufig verwendete Debugging-Methode vor, nämlich die Debugging-Methode zum Debuggen von Schreibdateien.

Im Android-System ist das Debuggen einer C-Anwendung äußerst umständlich. Um die Integrität des Protokolls zu bewahren, kann die Datei-Debugging-Methode eine wichtige Rolle spielen. Hier ist ein Beispiel:

#include <stdio.h>
DATEI * write_debug_file=NULL;
//Debuginformationen in Datei schreiben void write_Debug_to_file(char *debug_log)
{
 wenn(write_debug_file==NULL)
 wirte_debug_file = fopen("debug.txt","wt");
 wenn(write_debug_file==NULL)
 zurückkehren;
 fputs(Debug-Protokoll, Debug-Datei schreiben);
}
int Haupt(void)
{
 int ich;
 char Puffer[100];
 für(i = 0; i < 10; i++)
 {
 sprintf(buf,"i:%d\n",i);
 //Debug-Informationen schreiben write_Debug_to_file(buf);
 }
 wenn(Debugdatei schreiben != NULL)
 fclose(Debugdatei schreiben);
 Rückgabe 0;
}

Laufergebnisse:

Nachdem wir debug.txt geöffnet haben, können wir sehen:

ich:0
ich:1
ich:2
ich:3
ich:4
ich:5
ich:6
ich:7
ich:8
ich:9

Die ausgedruckten Daten werden in dieser Datei gespeichert. Wir können sogar jeden Satz im Codesegment in das Protokoll schreiben und das Problem später analysieren.

Dies ist ein sehr gutes Debugging-Tool.

Zusammenfassen

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an

Das könnte Sie auch interessieren:
  • Tutorial zum Remote-Debuggen in Java (am Beispiel von Eclipse)
  • Detaillierte Erklärung der Schritte zum Debuggen eines Programms mithilfe von Haltepunkten in C#
  • IOS verwendet NSAssert() und NSParameterAssert zum Debuggen des Programms
  • Verwenden der PDB-Bibliothek zum Debuggen von Programmen in Python
  • Schritte zum Verbinden von Ubuntu mit dem Android-Debugging-Programm über WLAN
  • Android-Entwicklungshinweise: Erfahren Sie in einer Minute, wie Sie mit Logcat das Programm debuggen
  • Debug-Klasse zum Debuggen von Programmen unter ASP
  • Verwenden von bat zum Löschen des Systemskript-Debuggers
  • asp:debug-Klassendebugger

<<:  Globale Aufrufimplementierung von Vue2.x Picker auf mobilen Endgeräten

>>:  Detaillierte Erklärung der Funktionen IFNULL() und COALESCE() zum Ersetzen von Null in MySQL

Artikel empfehlen

Zusammenfassung ungewöhnlicher Operatoren und Operatoren in js

Zusammenfassung gängiger Operatoren und Operatore...

Über die Kontrolle und Verschönerung von Eingabedateien

Beim Hochladen auf einigen Websites wird nach dem...

Typische Fälle von MySQL-Indexfehlern

Inhaltsverzeichnis Typische Fälle Anhang: Häufige...

Lösung für den internen Serverfehler Nginx 500

Als ich heute Nginx verwendete, trat ein 500-Fehl...

Jenkins verpackt Microservices, um Docker-Images zu erstellen und auszuführen

Inhaltsverzeichnis Umgebungsvorbereitung Start 1....

Spezifische Verwendung von Linux which Befehl

Oft möchten wir in Linux eine Datei finden, wisse...

Beispiele für dl-, dt- und dd-Listenbezeichnungen

Die Tags dd und dt werden für Listen verwendet. N...

Mehrere Möglichkeiten zur Implementierung eines 0-ms-Verzögerungstimers in js

Inhaltsverzeichnis WarteschlangeMikrotask asynchr...

Node verwendet das Modul async_hooks zur Anforderungsverfolgung

Das Modul async_hooks ist eine experimentelle API...

Zusammenfassung der Methoden zum Abfragen von MySQL-Benutzerberechtigungen

Einführung von zwei Methoden zum Anzeigen von MyS...

Heute bin ich auf ein sehr seltsames Problem gestoßen und habe es selbst gelöst

...Es ist so, heute wollte ich ein Popup-Fenster m...