找到 34423 篇文章,关于编程

C++ 中的 Makefile 及其应用

Ayush Gupta
更新于 2020年4月1日 06:46:17

浏览量 180 次

本教程将讨论一个程序,以了解 C++ 中的 Makefile 及其应用。任务是用 Makefile 来分解整个程序。通常的做法是创建包含所有类/功能的 .cpp 文件和 .h 文件,并将它们链接在一起。示例main.cpp#include #include "function.h" using namespace std; //主执行程序 int main(){    int num1 = 1;    int num2 = 2;    cout

使用 C++ STL 的克鲁斯卡尔最小生成树算法

Ayush Gupta
更新于 2020年4月1日 06:43:15

浏览量 417 次

本教程将讨论一个程序,以了解使用 C++ STL 的克鲁斯卡尔最小生成树算法。我们将得到一个连通的、无向的加权图。我们的任务是计算给定图的最小生成树。示例 在线演示#include using namespace std; typedef pair iPair; //图的结构 struct Graph{    int V, E;    vector< pair > edges;    Graph(int V, int E){       this->V = V;       this->E = E;    }    void addEdge(int u, int v, int w){       edges.push_back({w, {u, v}});    } ... 阅读更多

C++ 中的 lower_bound

Ayush Gupta
更新于 2020年4月1日 06:41:03

浏览量 236 次

本教程将讨论一个程序,以了解 C++ 中的 lower_bound。C++ 中的 lower_bound() 方法用于返回容器对象中第一个不小于给定值的数字。示例 在线演示#include int main(){    std::vector v{ 10, 20, 30, 40, 50 };    std::cout

C/C++ 中的 lseek() 函数:读取交替的第 n 个字节并将其写入另一个文件

Ayush Gupta
更新于 2020年4月1日 06:38:41

浏览量 588 次

本教程将讨论一个程序,以了解如何读取交替的第 n 个字节并将其写入另一个文件。我们将得到两个 .txt 文件。我们的任务是使用 lseek() 将一个文件的内容写入另一个文件,lseek() 用于更改文件描述符的指针。示例#include #include #include #include void func(char arr[], int n){    int f_write = open("start.txt", O_RDONLY);    int f_read = open("end.txt", O_WRONLY);    int count = 0;    while (read(f_write, arr, 1)){       if (count < n) ... 阅读更多

C++ 程序中的迭代器失效

Ayush Gupta
更新于 2020年4月1日 06:47:34

浏览量 110 次

本教程将讨论一个程序,以了解 C++ 中的迭代器失效。在迭代容器对象元素时,如果我们不应用边界检查,有时它可能会失效。这主要是因为容器对象的形状和大小发生了变化。示例 在线演示#include using namespace std; int main() {    //声明一个向量    vector v{1, 5, 10, 15, 20};    //在执行过程中更改向量    //这将导致边界失效    for (auto it=v.begin();it!=v.end();it++)       if ((*it) == 5)          v.push_back(-1);    for (auto ... 阅读更多

C++ 中 std::sort() 的内部细节

Ayush Gupta
更新于 2020年4月1日 06:31:34

浏览量 198 次

本教程将讨论一个程序,以了解 C++ 中 std::sort() 的内部细节。std::sort() 函数用于使用元素比较对数组进行排序。如果我们深入了解 std::sort() 的功能,它使用 IntroSort 算法对容器对象的元素进行排序。示例 在线演示#include using namespace std; int main(){    int arr[] = {1, 5, 8, 9, 6, 7, 3, 4, 2, 0};    int n = sizeof(arr)/sizeof(arr[0]);    sort(arr, arr+n);    cout

C/C++ 中的整数字面量(前缀和后缀)

Ayush Gupta
更新于 2020年4月1日 06:29:25

浏览量 2K+

本教程将讨论一个程序,以了解 C/C++ 中的整数字面量(前缀和后缀)。整数字面量是直接在源代码中表示的整数值的字面量。此外,它们分为两种类型:前缀 - 前缀表示值的基数。例如,0x10 表示十六进制值,其中 0x 为前缀。后缀 - 后缀表示值的类型。例如,8465484156155LL 表示长长整数。示例 在线演示#include using namespace std; int main(){    //前缀    cout

C/C++ 中的 INT_MAX 和 INT_MIN 及其应用

Ayush Gupta
更新于 2020年4月1日 06:30:53

浏览量 3K+

本教程将讨论一个程序,以了解 C/C++ 中的 INT_MAX 和 INT_MIN。INT_MIN 和 INT_MAX 是定义为设置变量/元素的最小值和最大值的宏。示例 在线演示#include int main(){    printf("%d", INT_MAX);    printf("%d", INT_MIN);    return 0; }输出2147483647 -2147483648应用计算数组中的最小值示例 在线演示#include //计算数组中的最小元素 int compute_min(int arr[], int n){    int MIN = INT_MAX;    for (int i = 0; i < n; i++)    MIN = std::min(MIN, arr[i]);    std::cout

使用 C++ STL 的插入排序

Ayush Gupta
更新于 2020年4月1日 06:20:53

浏览量 618 次

本教程将讨论一个程序,以了解使用 C++ STL 的插入排序。我们使用 std::upper_bound 来查找位于错误位置的元素,然后旋转数组的未排序部分使其排序。示例 在线演示#include //执行插入排序的函数 void insertionSort(std::vector &vec){    for (auto it = vec.begin(); it != vec.end(); it++){       auto const insertion_point =       std::upper_bound(vec.begin(), it, *it);       std::rotate(insertion_point, it, it+1);    } } //打印数组 void print(std::vector vec){    for( int x : vec)    std::cout

C++ 程序中 STL set 的插入和删除

Ayush Gupta
更新于 2020年4月1日 06:18:48

浏览量 392 次

本教程将讨论一个程序,以了解 C++ 中 STL set 的插入和删除。set 是一个容器元素。使其独一无二的特性是它只能包含唯一元素,并且可以按排序方式循环遍历。示例插入 在线演示#include #include using namespace std; int main(){    set st;    //声明迭代器    set::iterator it = st.begin();    set::iterator it1, it2;    pair< set::iterator,bool> ptr;    //插入单个元素    ptr = st.insert(20);    if (ptr.second)       cout

广告
© . All rights reserved.