C++字符串定位不使用已有的函数名
时间: 2023-05-19 11:04:36 浏览: 48
可以使用循环遍历字符串,逐个比较字符是否匹配。例如:
```c
char* str = "hello world";
char* target = "world";
int len1 = strlen(str);
int len2 = strlen(target);
for (int i = 0; i <= len1 - len2; i++) {
int j;
for (j = 0; j < len2; j++) {
if (str[i+j] != target[j]) {
break;
}
}
if (j == len2) {
printf("Found at index %d\n", i);
break;
}
}
```
这个代码片段可以在 C 中实现字符串定位,不使用已有的函数名。
相关问题
mfc c++ OpenCV 把字符串转换成jpg图片
你可以使用OpenCV库来实现将字符串转换为JPG图像的功能。下面是一个基本的示例代码,演示了如何将字符串转换为图像并保存为JPG文件:
```cpp
#include <opencv2/opencv.hpp>
void stringToJpg(const std::string& str, const std::string& filename)
{
std::vector<uchar> data(str.begin(), str.end());
cv::Mat img = cv::imdecode(data, cv::IMREAD_UNCHANGED);
cv::imwrite(filename, img);
}
int main()
{
std::string str = "your_string_here"; // 替换为你的字符串数据
// 调用函数将字符串转换为图像并保存为JPG文件
stringToJpg(str, "output.jpg");
return 0;
}
```
请确保在编译和运行代码之前已正确安装和配置了OpenCV库。这段代码将字符串数据解码为图像,然后使用`imwrite`函数将其保存为JPG文件。你需要将`your_string_here`替换为你实际的字符串数据。保存的图像文件名为`output.jpg`,你可以根据需要更改文件名。
希望这可以帮助到你!如果你有任何进一步的问题,请随时提问。
已有一排序的字符串str,现输入一新的字符c,通过折半查找法,快速找到字符c插入位置,将此功能用函数void insert(char str[],char c)来实现,在主函数中调用此函数,并输出数据
好的,我已经理解了你的问题。以下是实现该功能的代码:
```c++
#include <iostream>
#include <cstring>
using namespace std;
void insert(char str[], char c) {
int left = 0, right = strlen(str) - 1;
int mid = 0;
while (left <= right) {
mid = (left + right) / 2;
if (c < str[mid]) {
right = mid - 1;
} else {
left = mid + 1;
}
}
// 此时 left 即为插入位置
for (int i = strlen(str) - 1; i >= left; i--) {
str[i + 1] = str[i];
}
str[left] = c;
}
int main() {
char str[100] = "abcdefg";
insert(str, 'c');
cout << str << endl;
return 0;
}
```
这段代码中,我们首先定义了一个名为 `insert` 的函数,该函数接受两个参数,一个是已经排序的字符串 `str`,另一个是要插入的字符 `c`。函数中,我们使用折半查找法找到 `c` 的插入位置,并将 `c` 插入到 `str` 中。最终,我们在主函数中调用 `insert` 函数,并输出最终结果。
希望能够帮到你!
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)