当前位置: 首页 > wzjs >正文

鲜花网站有关建设搜索风云榜百度

鲜花网站有关建设,搜索风云榜百度,哈尔滨+做网站公司有哪些,网络公司实践报告3000字阐述g 有哪些常用的选项&#xff0c;该选项有什么作用 选项作用-o <file>指定输出文件名&#xff08;默认生成 a.out&#xff09;-c仅编译生成目标文件&#xff08;.o 文件&#xff09;&#xff0c;不链接-E只进行预处理&#xff0c;输出预处理后的代码&#xff08;展开…
  1. 阐述g++ 有哪些常用的选项,该选项有什么作用
选项作用
-o <file>指定输出文件名(默认生成 a.out
-c仅编译生成目标文件(.o 文件),不链接
-E只进行预处理,输出预处理后的代码(展开宏、包含头文件)
-S生成汇编代码(.s 文件)
选项作用
-g生成调试信息(支持 GDB 调试)
-ggdb生成更详细的 GDB 调试信息
-Wall开启所有常见警告(未初始化变量、未使用变量等)
-Wextra启用额外警告(如函数参数未使用)
-Werror将警告视为错误,强制修复所有警告
-pedantic严格遵循 ISO C++ 标准,拒绝非标准语法
  1. 试写一个函数,计算字符串 s中最大连续相同的字符个数。例如,若s 为"aaabbbb",则返回值为4;若s为"abcde",则返回 值为1。
#include <iostream>
using namesapce std;int max_same_char(const char* s) {if (s == nullptr || *s == '\0') return 0;  // 处理空指针和空字符串[4,7](@ref)int max_count = 1, current = 1;            // 初始值设为1(至少有一个字符)for (int i = 1; s[i] != '\0'; ++i) {       // 从第二个字符开始遍历[6,9](@ref)if (s[i] == s[i-1]) {current++;max_count = (current > max_count) ? current : max_count; // 更新最大值[4,8](@ref)} else {current = 1;                       // 字符变化时重置计数器[9](@ref)}}return max_count;
}
  1. 编写多个同名函数,实现对指定字符数组中按索引添加元素,按指定字符前添加元素和批量添加元素
#include <iostream>
using namesapce std;
// 按索引插入单个字符
void array_insert(char* arr, int& size, int index, char ch) {if (index < 0 || index > size) return; // 索引越界检查[6](@ref)if (size + 1 >= sizeof(arr)/sizeof(arr[0])) return; // 容量检查[6](@ref)memmove(arr + index + 1, arr + index, size - index); // 移动元素[6,10](@ref)arr[index] = ch;size++;arr[size] = '\0'; // 维护字符串终止符
}// 在指定字符前插入元素
bool array_insert(char* arr, int& size, char target, char ch) {for (int i = 0; i < size; ++i) {if (arr[i] == target) {array_insert(arr, size, i, ch); // 复用索引插入逻辑[2,6](@ref)return true;}}return false; // 未找到目标字符
}// 批量添加元素
void array_insert(char* arr, int& size, const char* elements) {int add_len = strlen(elements);if (size + add_len >= sizeof(arr)/sizeof(arr[0])) return; // 容量检查[10](@ref)memcpy(arr + size, elements, add_len); // 批量复制[5,7](@ref)size += add_len;arr[size] = '\0'; // 维护字符串终止符
}int main() {char buffer[50] = "Hello";int length = strlen(buffer);// 测试索引插入array_insert(buffer, length, 5, '!'); // 末尾插入cout << buffer << std::endl; // 输出: Hello!// 测试字符前插入array_insert(buffer, length, 'e', '3'); // 在第一个'e'前插入cout << buffer << std::endl; // 输出: H3ello!// 测试批量添加array_insert(buffer, length, "World");cout << buffer << std::endl; // 输出: H3ello!Worldreturn 0;
}
  1. 利用今天学习的函数模板,设计一个排序算法函数,实现对任意类型的数据实现排序

    #include <iostream>
    using namesapce std;
    // 自定义交换函数模板
    template <typename T>
    void custom_swap(T& a, T& b) {T temp = a;a = b;b = temp;
    }// 分区函数
    template <typename T>
    int partition(T arr[], int low, int high) {T pivot = arr[high];  // 基准值选择优化可参考文献[3,9](@ref)int i = low - 1;for (int j = low; j <= high - 1; ++j) {if (arr[j] < pivot) {++i;custom_swap(arr[i], arr[j]);  // 手动交换元素}}custom_swap(arr[i + 1], arr[high]);return i + 1;
    }// 快速排序主函数
    template <typename T>
    void quick_sort(T arr[], int low, int high) {if (low < high) {int pi = partition(arr, low, high);quick_sort(arr, low, pi - 1);quick_sort(arr, pi + 1, high);}
    }int main() {int nums[] = {5, 2, 9, 1, 5};quick_sort(nums, 0, 4);  // 排序整型数组string strs[] = {"apple", "banana"};quick_sort(strs, 0, 1);  // 排序字符串数组return 0;
    }
    
  2. C++编写一个可以容纳任意数据类型的链表.。

#include <iostream>
#include <memory>template <typename T>
class LinkedList {
private:struct Node {T data;std::unique_ptr<Node> next;Node(const T& val) : data(val), next(nullptr) {}};std::unique_ptr<Node> head;Node* tail;public:LinkedList() : head(nullptr), tail(nullptr) {}// 添加元素到链表尾部void append(const T& value) {auto newNode = std::make_unique<Node>(value);if (!head) {head = std::move(newNode);tail = head.get();} else {tail->next = std::move(newNode);tail = tail->next.get();}}// 删除指定元素bool remove(const T& value) {Node* current = head.get();Node* prev = nullptr;while (current) {if (current->data == value) {if (prev) {prev->next = std::move(current->next);if (!prev->next) {tail = prev;}} else {head = std::move(current->next);if (!head) {tail = nullptr;}}return true;}prev = current;current = current->next.get();}return false;}// 遍历打印链表内容void print() const {Node* current = head.get();while (current) {cout << current->data;if (current->next) std::cout << " -> ";current = current->next.get();}cout << " -> nullptr" << std::endl;}
};int main() {// 整型链表示例LinkedList<int> intList;intList.append(1);intList.append(2);intList.append(3);intList.print();  // 输出: 1 -> 2 -> 3 -> nullptrintList.remove(2);intList.print();  // 输出: 1 -> 3 -> nullptr// 字符串链表示例LinkedList<std::string> strList;strList.append("Hello");strList.append("World");strList.print();  // 输出: Hello -> World -> nullptrreturn 0;
}
http://www.dtcms.com/wzjs/149335.html

相关文章:

  • 网站推广服务报价表搜索引擎登录入口
  • 深圳坂田网站建设b站推广平台
  • 做网站的重点目标外包接单平台
  • 可信的h5制作开发网站怎么优化
  • 国产erp软件前十名优化大师使用心得
  • 怎么找个人搭建网站sem是什么设备
  • 昆山市建设局网站使用最佳搜索引擎优化工具
  • 网站推广的优点网页分析报告案例
  • 网站制作机构百度在线识图查图片
  • 手机网站如何做才能兼容性各种手机b站推广网站入口
  • 衡阳市党政门户网站百度网站快速排名公司
  • 微信网站开发平台经典软文案例100例简短
  • 长春网站建设工作网络营销考试答案
  • 5元域名免备案南京网络推广优化哪家好
  • 办公邮箱最常用的是什么邮箱天津seo外包平台
  • 用c 做网站网站建设小程序开发
  • 福建省建设工程质量安全网站最有效的广告宣传方式
  • 南京大型门户网站建设服务营销策略
  • 网站设计公司市场容量榆林市网站seo
  • 福州做网站优化百度极速版app下载安装
  • 小企业一键做网站网络营销环境分析主要包括
  • 图书网站建设策划书1万字爱站网长尾关键词挖掘工具福利片
  • 响应式和非响应式网站域名停靠网页推广大全2021
  • 怎样做企业网站备案互联网营销推广
  • 南昌做网站优化价格今日要闻 最新热点
  • 成都青白江网站建设最新互联网项目平台网站
  • 帮人做图挣外快的网站购物网站如何推广
  • 南宁本地有几家网站开发市场调研方法有哪几种
  • 做境外碎片化旅游的网站搜索引擎排名优化方案
  • 郑州专业做微信网站google建站推广