cpp / intermediate
Snippet
Auswertung von Schleifen mit mehreren Bedingungen
Dieses fortgeschrittene Kontrollflussmuster verwendet ein logisches UND, um Pufferüberläufe während der Iteration zu verhindern. Es stellt sicher, dass der Speicherzugriff nur erfolgt, wenn der Index gültig ist und die Daten bestimmte Kriterien erfüllen.
snippet.cpp
cpp
1
2
3
4
5
6
7
8
9
10
#include <iostream>void processBuffer(const char* buffer) {int index = 0;// While the character is not null and index is within boundswhile (buffer[index] != '\0' && index < 100) {std::cout << "Processing: " << buffer[index] << std::endl;index++;}}
Erklärung
1
while (buffer[index] != '\0' && index < 100)
Kombiniert eine Wertprüfung mit einer Sicherheitsgrenzprüfung unter Verwendung von Kurzschlusslogik.
2
index++;
Inkrementiert den Zähler, um sich durch den zusammenhängenden Speicherblock zu bewegen.