2021-07-01 Lua语言的16进制转b进制local is = "123ABC"sum = 0for i = 1, #s, 1 do local t = string.byte(s, i) print("t =", t) if(t >= 48 and t <= 48 + 9) then t = t - 48 elseif(t >= 65 and t <= 70) then t = t - 55 end sum = s
unique使用方法 使用方式函数unique原形iterator unique (iterator first, iterator last, pre);参数类型以及返回值都是迭代器返回值: 是排序好的元素的最后一个元素位置第三个比较方式:是判断什么条件两个是相同的,然后参照unique的函数板子进行操作函数原型模板如下(类似官方使用,具体看参考地址):iterator my_uniqu(iteraotr first, iitera last){ if(first == last) return l
sprintf fprintf printf 使用规则#include <iostream>#include <cstring>using namespace std;int main(){ char s[100]; int a = 10 , b= 20, d = 30; sprintf(s,"%d %d",a,b); for(int i = 0;i < strlen(s);i++) if(strchr(s,s[i])!=NULL) cout <<
可变参数列表的使用方法 待更详细的总结使用va_list 等参考资料https://www.runoob.com/cprogramming/c-macro-va_start.htmlhttps://blog.csdn.net/edonlii/article/details/8497704https://www.cnblogs.com/coolYuan/p/10181011.html
关于可变参数列表的使用方法 待更详细的总结使用va_list 等参考资料https://www.runoob.com/cprogramming/c-macro-va_start.htmlhttps://blog.csdn.net/edonlii/article/details/8497704https://www.cnblogs.com/coolYuan/p/10181011.html
c++快读板子 快读比较简单inline int read(){ int sum = 0 , w = 1 ; char c; c = getchar(); while( c < '0' || c > '9') { if(c == '-') w = -1; c = getchar(); } while(c >= '0' && c <= '9') { sum = sum *
deque的使用方法 deque队列的使用方法使用方法与vector一样结构不一样,如图,亮度可以插入以及上出,就像两个栈,非常类似,但是一段插入之后,可以从另一端处,deque double end queue函数使用。 size resize front back clear pop_back push_back push_front pop_front迭代器:begin,end,insert函数使用方法一模一样[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Yu4Rf3E
vector容器的详细使用方法 补充内容begin, end,返回的是迭代器的位置,并不是指针data()函数可以返回的是第一个元素指针的位置end(),返回的最后一个元素后面一个位置,也就是元素后端的占位符rend(),从后往前的第一个元素的位置resize(),重新设置大小,添加元素之后v.resize()该函数的使用方法是:有数据大小之后重新设置大小,多退少补v.reserve :据说给的是容量,能够存储的最多的长度, size是长度 capacity 是容量push_back()还有与之相对的是pop_back
重载运算符之<< 和 >> 重载运算符 << 和 >>只能重载为全局函数cout 是 ostream 类的对象,cin 是 istream 类的对象,要想达到这个目标,就必须以全局函数(友元函数)的形式重载<<和>>否则就要修改标准库中的类,这显然不是我们所期望的代码测试效果#include <iostream>#include <iomanip>using namespace std;class Complex{private:
运算符+-*/等重载以及如何选择重载类型(成员函数 或则还是 全局函数) 运算符重载不改变其运算规则和顺序#include <iostream>#include <iomanip>using namespace std;class Complex{private: double m_a, m_b;public: //以全局函数的形式进行重载 friend Complex operator+(const Complex &a, const Complex &b); friend Complex
运算符重载之注意事项 运算符重载一、可以重载的符号1.比较常用的运算符算符运算符:+ - * / %复合算数运算符: += -= *= 类似<< 和 >>[] ++ – delete new ()所有的符号为:+ - * / % ^ & | ~ ! = < > += -= *= /= %= ^= &= |= << >> <<= >>= == != <= >= && || ++
运算符重载 一、介绍运算符重载指的是对运算符的重新定义,使其支持特定类型的数据计算主要是用于类重载运算符是重载函数的特殊情况C++ 自带的运算符,最初只定义了一些基本类型的运算规则。当我们要在用户自定义的数据类型上使用这些运算符时,就需要定义运算符在这些特定类型上的运算方式。...
友元函数的使用方式 一、介绍个人认为该函数的作用及时能够是: 非成员函数可以使用 私有的 成员变量用途: 便于写 sort函数 和 优先队列 的 重载函数调用运算符()二、 专业解释:一个类中可以有 public、protected、private 三种属性的成员,通过对象可以访问 public 成员,只有本类中的函数可以访问本类的 private 成员。现在,我们来介绍一种例外情况——友元(friend)。借助友元(friend),可以使得其他类中的成员函数以及全局范围内的函数访问当前类的 private 成
成员函数与非成员函数的使用与区分 1、区分方式成员函数与成员变量都是类当中的定义函数、变量 在类中: 成员函数 成员变量函数不在类中: 全局函数2、局限性全局函数无法访问类中的 私有成员如果确实需要,那么需要将该函数声明为友元函数举例class Student{private: string name; int age;public://构造函数必须是public,不然就无法访问了,私有变量也无法复制 Student(string name,int age) : name(name)
指针与函数 一、指针作为函数参数void swap(int *a, int *b){ int c; *a = c; c = *b; *b = *a;}int main(){ int a = 3, b = 4; swap(a, b); cout << a << b << endl; return 0;}比较简单 也比较好理解二、指针作为函数返回值int *ft(int *n){ if(
c++文件读写的三种方式(输入输出重定向、fopen、文件输入输出流) 一、输入输出重定向FILE * freopen( const char * filename, const char * mode,FILE * stream)freopen( “地址”,“模式”,“文件流”)内存地址模式: 读 r ,写 w, 可读可写 w+文件流:stdin:标准输入流,默认是从键盘输入数据stdout : 标准输出流,默认是输出到屏幕stderr :标准错误流,默认是屏幕格式:int main(){ freopen("D:\\001\\1.
指针字符串 与 const char * 即const * char 的详细使用讲解 指针字符串的使用问题一、直接定义字符串指针的使用注意事项定义字符串指针的时候 const char *, 和字符串本身相同,就不会出现警告const char * == char const *,作用:const char * p ,表示的是指针p指向的数值不能修改, 但是可以通过本身自己去修。不能通过指针修改指针对应的数值,但是其对应的数值,可以通过本身修改二、会出现警告的版本,能正常输出,但是不能修改int main(){ char *str = "hellow"
链式前向星代码实现与理解 前提:理解好什么是前向星?参照上一篇博客,然后看本文,会有所帮助链式前向星前向星:使用前向星的head[i]数组表示方法,但不排序。head[i]:表示边集的序号链式:head[i] 表示以i为起点对应的边集中的编号,每次更新i的时候,将之前保存的数值,放入next中保存,这就有了寻找的踪迹,和并查集查找父节点的方式一样综合起来就是链式前向星链式前向星的插入int cnt ; // 记录边数int head[maxn]; // 记录边集对应的边的位置 void addedge(int