不使用sting函数
时间: 2024-10-23 13:15:45 浏览: 32
用好c++中的string类型
如果你想要在不使用`string`库的情况下处理字符串操作,可以使用标准C语言提供的字符数组、指针以及一些基本的字符串操作函数,如复制、连接、查找等。以下是一些基本的例子:
1. **长度计算**:
```c
char str[] = "Hello World!";
int len = 0;
while (str[len] != '\0') {
len++;
}
```
2. **字符串复制**:
```c
char dest[50];
for (int i = 0; str[i] != '\0'; i++) {
dest[i] = str[i];
}
dest[len] = '\0'; // 如果原字符串有空格或特殊字符,则此处需要处理
```
3. **连接字符串**:
```c
char newStr[100];
int i = 0;
while (str[i] != '\0') {
newStr[i++] = str[i];
}
newStr[i++] = ' ';
newStr[i] = str[strlen(str)];
newStr[i] = '\0';
```
4. **查找子串**:
```c
char searchStr[] = "World";
int index = -1;
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] == searchStr[0]) {
for (int j = 1; j < strlen(searchStr); j++) {
if (str[i + j] != searchStr[j]) {
break;
}
if (j == strlen(searchStr) - 1) { // 找到了全匹配
index = i;
break;
}
}
}
}
```
请注意,这些方法通常适用于小型、简单的字符串操作,并且可能会因为效率较低而不适合处理大型复杂字符串。现代C++中推荐使用`std::string`,因为它提供了一套高效且易用的字符串处理功能。
阅读全文