用c++编写一个函数求字符串的长度,类似strlen函数
时间: 2024-04-30 20:19:57 浏览: 13
下面是一个简单的C++函数,可以求出给定字符串的长度:
```cpp
#include <iostream>
using namespace std;
int my_strlen(const char* str) {
int len = 0;
while (*str++) {
len++;
}
return len;
}
int main() {
char s[] = "Hello World!";
cout << "字符串长度为:" << my_strlen(s) << endl;
return 0;
}
```
在这个函数中,我们使用了一个指针来遍历整个字符串,每次循环将指针向后移动一位,直到指针指向字符串的结尾处(即 `\0` 字符)。在每次循环中,我们将字符串长度加 1,最终返回字符串的长度即可。
相关问题
用C++编写一个程序,编写函数将字符串按逆序存放
好的,下面是用 C++ 编写的程序,实现将字符串按逆序存放的功能:
```c++
#include <iostream>
#include <cstring>
using namespace std;
void reverse(char str[]) {
int len = strlen(str);
for(int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
}
int main() {
char str[100];
cout << "请输入字符串:";
cin >> str;
reverse(str);
cout << "逆序后的字符串为:" << str << endl;
return 0;
}
```
在上面的程序中,我们编写了一个 `reverse` 函数,用于将传入的字符串按逆序存放。具体实现是使用双指针法,将字符串首尾字符互换,直到两个指针相遇为止。在 `main` 函数中,我们接受用户输入的字符串,调用 `reverse` 函数进行逆序操作,并输出结果。
用c++ 编写一个逆转字符串的函数reverse
你可以通过以下代码来实现逆转字符串的函数reverse:
```c
#include <stdio.h>
#include <string.h>
void reverse(char str[]) {
int len = strlen(str);
for (int i = 0; i < len / 2; i++) {
char temp = str[i];
str[i] = str[len - i - 1];
str[len - i - 1] = temp;
}
}
int main() {
char str[] = "hello world";
reverse(str);
printf("%s", str);
return 0;
}
```
在这个函数中,我们使用了一个循环来交换字符串中的字符。由于我们只需要逆转一半的字符串,因此循环的次数是字符串长度的一半。在每次循环中,我们使用一个临时变量来交换两个字符的位置。最后,我们可以在main函数中调用这个函数,并输出逆转后的字符串。