Funkcija memcmp () programmā C ++ salīdzina noteiktu rādītāju skaitu diviem rādītāju objektiem
memcmp () prototips
int memcmp (const void * lhs, const void * rhs, size_t skaits);
memcmp()
Funkcija aizņem trīs argumentus: LHS, RHS un skaitu. Šī funkcija objektus, uz kuriem norāda lhs un rhs, vispirms interpretē kā unsigned char
. Tad tas leksogrāfiski salīdzina pirmās lhs un rhs rakstzīmes.
Tas ir definēts galvenes failā "> header file.
memcmp () parametri
lhs and rhs
: Atmiņas objektu rādītājs, lai salīdzinātu.count
: Maksimālais salīdzināmo baitu skaits.
memcmp () Atgriešanās vērtība
Funkcija memcmp () atgriež:
- pozitīva vērtība, ja pirmais atšķirīgais baits
lhs
ir lielāks par atbilstošo baiturhs
. - negatīva vērtība, ja pirmais atšķirīgais baits
lhs
ir mazāks par atbilstošo baiturhs
. - 0, ja pirmais skaits baiti no
lhs
unrhs
ir vienādi.
Piemērs: Kā darbojas memcmp () funkcija
#include #include using namespace std; void display(char *lhs, char *rhs, int result, int count) ( if(result> 0) cout << rhs << " precedes " << lhs << endl; else if (result < 0) cout << lhs << " precedes " << rhs << endl; else cout << "First " << count << " characters of " << lhs << " and " << rhs << " are same" << endl; ) int main() ( char lhs() = "Hello World!"; char rhs() = "Hello Earth!"; int result; result = memcmp(lhs, rhs, 5); display(lhs, rhs, result, 5); result = memcmp(lhs, rhs, 7); display(lhs, rhs, result, 7); return 0; )
Palaidot programmu, izeja būs:
Pirmās 5 Hello World rakstzīmes! un sveika Zeme! ir tie paši Sveika Zeme! pirms Hello World!