不用strcmp函数,c++怎么得到字符数组的长度
时间: 2024-02-12 14:03:31 浏览: 14
可以使用C++标准库中的`std::strlen`函数来获取字符数组的长度。该函数接受一个字符指针作为参数,返回该指针指向的字符串的长度,不包括字符串末尾的空字符'\0'。例如:
```c++
char str[] = "Hello, world!";
int len = std::strlen(str);
std::cout << "String length: " << len << std::endl;
```
输出结果为:
```
String length: 13
```
相关问题
strcmp函数c++
strcmp函数是C语言中的一个字符串比较函数。它用于比较两个字符串的大小关系。该函数的返回值为整数,具体取值如下:
- 如果str1小于str2,则返回一个负整数。
- 如果str1等于str2,则返回0。
- 如果str1大于str2,则返回一个正整数。
在引用和引用的例子中,我们可以看到如何使用strcmp函数进行字符串比较。这两个例子分别比较了两对字符串,然后打印了strcmp函数的返回值。
c++字符串数组比较大小的代码
在C语言中,字符串数组无法直接使用运算符进行比较,因为字符串是由若干个字符组成的,比较它们的大小需要逐个比较字符的ASCII码值。以下是一个比较字符串数组大小的示例代码:
```
#include <stdio.h>
#include <string.h>
int main()
{
char str1[50], str2[50];
printf("输入第一个字符串:");
fgets(str1, 50, stdin); // 从标准输入读取字符串
printf("输入第二个字符串:");
fgets(str2, 50, stdin);
int cmp = strcmp(str1, str2);
if(cmp == 0)
{
printf("两个字符串相等\n");
}
else if(cmp > 0)
{
printf("第一个字符串大于第二个字符串\n");
}
else
{
printf("第一个字符串小于第二个字符串\n");
}
return 0;
}
```
上述代码使用了`strcmp()`函数进行字符串比较,该函数会返回一个int值。如果第一个字符串大于第二个字符串,返回值大于0。如果第一个字符串小于第二个字符串,返回值小于0。如果两个字符串相等,返回值等于0。通过判断返回值的大小,可以得出字符串数组的大小比较结果。