📅  最后修改于: 2023-12-03 14:42:03.331000             🧑  作者: Mango
在使用命令行参数的时候,我们可能会需要判断命令行参数是否等于某个特定的字符串。C++ 为我们提供了一种简单的方式来实现这个功能。
#include <string.h>
int strcmp(const char *str1, const char *str2);
str1
:用于比较的第一个字符串。str2
:用于比较的第二个字符串。str1
等于 str2
,则返回 0
。str1
小于 str2
,则返回小于 0
的值。str1
大于 str2
,则返回大于 0
的值。#include <iostream>
#include <string.h>
using namespace std;
int main(int argc, char* argv[]) {
if (strcmp(argv[1], "hello") == 0) {
cout << "Hello, world!" << endl;
} else {
cout << "Invalid argument" << endl;
}
return 0;
}
在上述示例中,我们使用了 strcmp
函数来比较命令行参数 argv[1]
和字符串 "hello"
是否相等。如果相等,输出 "Hello, world!"
;如果不相等,输出 "Invalid argument"
。
注意:在使用 strcmp
函数之前,我们需要确保命令行参数的个数 argc
大于等于 2,即确保命令行中传递了至少一个参数。否则可能会导致访问越界。