Inhaltsverzeichnis
Beispiel
Ausgabe
Heim Backend-Entwicklung C++ C-Programm, das nicht anhält, wenn Strg+Z gedrückt wird

C-Programm, das nicht anhält, wenn Strg+Z gedrückt wird

Sep 19, 2023 pm 06:13 PM
c程序 暂停 ctrl z

C-Programm, das nicht anhält, wenn Strg+Z gedrückt wird

Bei der Programmierung hat der Programmierer das Recht, die Ausführung des Programms explizit zu stoppen, wenn ein Programm eine Fehlfunktion aufweist und im Terminal-Compiler auf unerwartete Weise ausgeführt wird. Um ein Programm explizit zu stoppen, muss der Benutzer die richtige Tastenkombination kennen, die er drücken muss.

Um die Ausführung eines Codeblocks zu beenden, werden zwei Arten von Tastaturkürzeln verwendet.

  • Strg+c – Wird verwendet, um die Ausführung eines Programms zu stoppen, das einige Zeit braucht, um Ein-/Ausgabevorgänge abzuschließen, und dann die Ausführung anhält. Es sendet ein SIGINT-Signal an den Prozess und der Prozess wird beendet. In einigen Sprachen kann dies über eine Signalfunktion wie SIGINT in der C-Sprache gehandhabt werden.

  • Strg+z – Wird verwendet, um die Ausführung eines Programms zu stoppen. Alle mit dem Prozess verbundenen Aufgaben werden geschlossen und die Ausführung wird angehalten. Es sendet ein SINTSTP-Signal an den Prozess und beendet die Ausführung des Programms. Obwohl es auf die gleiche Weise implementiert ist, ist dieses Signal stärker als die anderen. Dies kann auch gehandhabt werden.

Hier schreiben wir einen Code, der den Aufruf von Strg+Z umgehen kann. Anstatt angehalten zu werden, gibt das Programm „Strg+Z kann diesen Code nicht anhalten“ aus.

Wie oben erwähnt, kann die Programmiersprache C den Aufruf von Strg+Z verarbeiten. Wenn das Signal SINTSTP aufgerufen wird, um den Programmprozess zu beenden, definieren wir die Rolle dieses Signals neu, sodass es bei Verwendung den Code nicht beendet und eine Zeile ausgibt. Die Methode

signal() wird verwendet, um mit solchen Dingen umzugehen.

Beispiel

Demonstration

#include <stdio.h>
#include <signal.h>
void signalhandler(int sig_num){
   signal(SIGTSTP, signalhandler);
   printf("Cannot execute Ctrl+Z</p><p>");
}
int main(){
   int a = 1;
   signal(SIGTSTP, signalhandler);
   while(a){
   }
   return 0;
}
Nach dem Login kopieren

Ausgabe

// an infinite loop
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonC-Programm, das nicht anhält, wenn Strg+Z gedrückt wird. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So unterbrechen Sie den Druckvorgang in Windows 11 So unterbrechen Sie den Druckvorgang in Windows 11 Feb 19, 2024 am 11:50 AM

Versehentlich eine große Datei gedruckt? Müssen Sie den Druckvorgang stoppen oder pausieren, um Tinte und Papier zu sparen? Es gibt viele Situationen, in denen Sie möglicherweise einen laufenden Druckauftrag auf Ihrem Windows 11-Gerät anhalten müssen. Wie kann ich den Druck unter Windows 11 anhalten? Unter Windows 11 wird durch das Anhalten des Druckvorgangs der Druckauftrag angehalten, die Druckaufgabe wird jedoch nicht abgebrochen. Dies bietet Benutzern eine flexiblere Kontrolle. Dazu gibt es drei Möglichkeiten: Druck über die Taskleiste anhalten Druck über Windows-Einstellungen anhalten Drucken über die Systemsteuerung Schauen wir uns diese nun im Detail an. 1] Drucken über die Taskleiste. Klicken Sie mit der rechten Maustaste auf die Druckwarteschlangenbenachrichtigung in der Taskleiste. Klicken Sie hier, um alle aktiven Druckeroptionen zu öffnen. Klicken Sie hier mit der rechten Maustaste auf den Druckauftrag und wählen Sie „Alle anhalten“.

Übersetzen Sie Folgendes ins Chinesische: C-Programm zur Konvertierung römischer Ziffern in Dezimalzahlen Übersetzen Sie Folgendes ins Chinesische: C-Programm zur Konvertierung römischer Ziffern in Dezimalzahlen Sep 05, 2023 pm 09:53 PM

Nachfolgend finden Sie einen C-Sprachalgorithmus zum Konvertieren römischer Ziffern in Dezimalzahlen: Algorithmus Schritt 1 – Start Schritt 2 – Römische Ziffern zur Laufzeit lesen Schritt 3 – Länge: = strlen(roman) Schritt 4 – Für i=0 bis Länge-1 Schritt 4.1-switch(roman[i]) Schritt 4.1.1-case'm': &nbs

C++-Programm zum Vergleich der lexikografischen Reihenfolge zweier Zeichenfolgen C++-Programm zum Vergleich der lexikografischen Reihenfolge zweier Zeichenfolgen Sep 04, 2023 pm 05:13 PM

Der lexikografische Zeichenfolgenvergleich bedeutet, dass Zeichenfolgen in Wörterbuchreihenfolge verglichen werden. Wenn beispielsweise zwei Zeichenfolgen „apple“ und „appeal“ vorhanden sind, steht die erste Zeichenfolge an letzter Stelle, da die ersten drei Zeichen von „app“ identisch sind. Dann ist das Zeichen für die erste Zeichenfolge „l“ und in der zweiten Zeichenfolge ist das vierte Zeichen „e“. Da „e“ kürzer als „l“ ist, steht es an erster Stelle, wenn wir lexikografisch sortieren. Zeichenfolgen werden vor der Anordnung lexikografisch verglichen. In diesem Artikel werden wir verschiedene Techniken zum lexikografischen Vergleich zweier Zeichenfolgen mit C++ kennenlernen. Verwendung der Funktion „compare()“ in C++-Strings Das C++-String-Objekt verfügt über eine Funktion „compare()“

Methoden und Bedienungsanleitung zur Behebung der Druckerstatusunterbrechung Methoden und Bedienungsanleitung zur Behebung der Druckerstatusunterbrechung Dec 26, 2023 pm 03:07 PM

Wenn wir einen Drucker zum Drucken von Dateien verwenden, stellen wir manchmal fest, dass der Druckerstatus angehalten wurde und der Druckvorgang nicht fortgesetzt werden kann. Eigentlich müssen wir die Druckpause nur aufheben. So stellen Sie den Druckerstatus wieder her, wenn er angehalten wurde: 1. Öffnen Sie zunächst die Druckereinstellungen über das Ecksymbol in der unteren rechten Ecke. 2. Nach dem Öffnen wird „Pause“ angezeigt. 3. Klicken Sie nun oben links auf „Drucker“. 4. Wenn „Drucken anhalten“ aktiviert ist, klicken Sie erneut, um das Kontrollkästchen zu deaktivieren. 5. Nach dem Deaktivieren werden Sie feststellen, dass die Pause nicht mehr erfolgt und Sie mit dem Drucken fortfahren können.

C-Programm zum Ermitteln der Länge einer verknüpften Liste C-Programm zum Ermitteln der Länge einer verknüpften Liste Sep 07, 2023 pm 07:33 PM

Verknüpfte Listen verwenden eine dynamische Speicherzuweisung, d. h. sie wachsen und schrumpfen entsprechend. Sie werden als Ansammlungen von Knoten definiert. Hier besteht ein Knoten aus zwei Teilen: Daten und Links. Die Darstellung von Daten, Links und verknüpften Listen ist wie folgt: - Arten von verknüpften Listen Es gibt vier Arten von verknüpften Listen: - Einfach verknüpfte Liste / Einfach verknüpfte Liste Doppelt / Doppelt verknüpfte Liste Zirkuläre einfach verknüpfte Liste Zirkuläre doppelt verknüpfte Liste Wir Verwenden Sie die rekursive Methode, um die Länge der verknüpften Liste zu ermitteln. Die Logik lautet -intlength(node ​​*temp){ if(temp==NULL) returnl;

Das C-Programm verwendet die Funktion rename(), um den Dateinamen zu ändern Das C-Programm verwendet die Funktion rename(), um den Dateinamen zu ändern Sep 21, 2023 pm 10:01 PM

Die Umbenennungsfunktion ändert den alten Namen einer Datei oder eines Verzeichnisses in den neuen Namen. Dieser Vorgang ähnelt dem Verschiebevorgang. Wir können diese Umbenennungsfunktion also auch zum Verschieben von Dateien verwenden. Diese Funktion ist in der Headerdatei der stdio.h-Bibliothek vorhanden. Die Syntax der Umbenennungsfunktion lautet wie folgt: intrename(constchar*oldname,constchar*newname); Die Funktion der rename()-Funktion akzeptiert zwei Parameter. Einer ist alter Name und der andere ist neuer Name. Beide Parameter sind Zeiger auf konstante Zeichen, die den alten und neuen Namen der Datei definieren. Gibt Null zurück, wenn die Datei erfolgreich umbenannt wurde; andernfalls wird eine Ganzzahl ungleich Null zurückgegeben. Während eines Umbenennungsvorgangs

C++-Programm zum Ermitteln des Werts der Umkehrfunktion des hyperbolischen Sinus, wobei ein gegebener Wert als Argument verwendet wird C++-Programm zum Ermitteln des Werts der Umkehrfunktion des hyperbolischen Sinus, wobei ein gegebener Wert als Argument verwendet wird Sep 17, 2023 am 10:49 AM

Hyperbelfunktionen werden mithilfe von Hyperbeln anstelle von Kreisen definiert und entsprechen gewöhnlichen trigonometrischen Funktionen. Es gibt den Verhältnisparameter in der hyperbolischen Sinusfunktion aus dem angegebenen Winkel im Bogenmaß zurück. Aber machen Sie das Gegenteil, oder anders gesagt. Wenn wir einen Winkel aus einem hyperbolischen Sinus berechnen wollen, benötigen wir eine umgekehrte hyperbolische trigonometrische Operation wie die hyperbolische Umkehrsinusoperation. In diesem Kurs wird gezeigt, wie Sie die hyperbolische Umkehrsinusfunktion (asinh) in C++ verwenden, um Winkel mithilfe des hyperbolischen Sinuswerts im Bogenmaß zu berechnen. Die hyperbolische Arkussinusoperation folgt der folgenden Formel -$$\mathrm{sinh^{-1}x\:=\:In(x\:+\:\sqrt{x^2\:+\:1})}, Wo\:In\:ist\:natürlicher Logarithmus\:(log_e\:k)

C++-Programm zum Drucken eines Wörterbuchs C++-Programm zum Drucken eines Wörterbuchs Sep 11, 2023 am 10:33 AM

Eine Karte ist ein spezieller Containertyp in C++, bei dem jedes Element ein Paar aus zwei Werten ist, nämlich einem Schlüsselwert und einem zugeordneten Wert. Der Schlüsselwert wird zum Indizieren jedes Elements verwendet, und der zugeordnete Wert ist der mit dem Schlüssel verknüpfte Wert. Unabhängig davon, ob der zugeordnete Wert eindeutig ist, ist der Schlüssel immer eindeutig. Um Kartenelemente in C++ zu drucken, müssen wir einen Iterator verwenden. Ein Element in einer Menge von Elementen wird durch ein Iteratorobjekt angegeben. Iteratoren werden hauptsächlich mit Arrays und anderen Arten von Containern (z. B. Vektoren) verwendet und verfügen über einen bestimmten Satz von Operationen, mit denen bestimmte Elemente innerhalb eines bestimmten Bereichs identifiziert werden können. Iteratoren können inkrementiert oder dekrementiert werden, um auf verschiedene Elemente in einem Bereich oder Container zu verweisen. Der Iterator zeigt auf den Speicherort eines bestimmten Elements im Bereich. Drucken einer Karte in C++ mit Iteratoren Schauen wir uns zunächst an, wie man definiert

See all articles