GeezerVisonThe World Wide Web, restored to 800 pixels of glory. |
| Home|About|Gaming cabinet|Archives|How it works|Starter sites |
GeezerVison is showing www.tutorialspoint.com — C++ ctring memcmp() Function
Selected Reading
C++ ctring memcmp() FunctionThe C++ ctring memcmp() function is used to compare two memory buffers. A Memory buffer is a place where temporary data is stored, and it is used to store data temporarily. It compares the first n bytes of the memory areas pointed to by s1 and s2. If memory overlaps, the results are undefined and results in a segmentation fault. Syntaxint memcmp(const void *s1, const void *s2, size_t n); ParametersFollowing are the parameters of this function −
Return ValueThe memcmp() function returns zero if the two memory blocks are equal, a value less than zero if the first byte that does not match in both memory blocks has a lower value in s1 than in s2, and a value greater than zero if the first byte that does not match in both memory blocks has a greater value in s1 than in s2. Example 1Following is an example to show the usage of memcmp() function. In this example, let's compare two memory blocks str1 and str2 using memcmp() function. For this, we will first initialize the memory blocks and then compare them using memcmp() function. #include <iostream>
#include <cstring>
using namespace std;
int main() {
char str1[15];
char str2[15];
int ret;
strcpy(str1, "abcdef");
strcpy(str2, "ABCDEF");
ret = memcmp(str1, str2, 5);
if(ret > 0) {
cout << "str1 is greater than str2"<<endl;
} else if(ret < 0) {
cout << "str1 is less than str2"<<endl;
} else {
cout << "str1 is equal to str2"<<endl;
}
return 0;
}
OutputFollowing is the output of the above C++ program: str1 is less than str2 Example 2Let's start with declaring two memory blocks str1 and str2 and then compare them using memcmp() function. #include <iostream>
#include <cstring>
using namespace std;
int main() {
char str1[15];
char str2[15];
int ret;
strcpy(str1, "abcdef");
strcpy(str2, "ABCDEF");
ret = memcmp(str1, str2, 5);
if(ret > 0) {
cout << "str1 is greater than str2"<<endl;
} else if(ret < 0) {
cout << "str1 is less than str2"<<endl;
} else {
cout << "str1 is equal to str2"<<endl;
}
// Exception case
char str3[15];
strcpy(str3, "abcdef");
ret = memcmp(str3, str3+2, 5);
if(ret > 0) {
cout << "str3 is greater than str3+2"<<endl;
} else if(ret < 0) {
cout << "str3 is less than str3+2"<<endl;
} else {
cout << "str3 is equal to str3+2"<<endl;
}
return 0;
}
OutputFollowing is the output of the above C++ program: str1 is less than str2 str3 is less than str3+2 Advertisements
|
| You are visitor 01402503 — GeezerVison does not store the pages you look up. Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required. |