c++语法学习总结(一)

bool 1byte

char 1byte

Int 4byte -21477483648~2147483648

Float 4byte

Double 8byet 15~16位

Long long 8byte -263~263

Long double 12~16byte 18~19位

1 byte = 4字节

   int %d

   float %f

   double: %lf

   char :%c

   long long: %lld 

初始化数组 #include memset(m,a,b);

                  M表示数组  赋值a  到b结束  (a,b都以byte位单位) 

复制数组void *memcpy(void *destin, void *source, unsigned n);

       destin-- 指向用于存储复制内容的目标数组,类型强制转换为 void* 指针。

       source-- 指向要复制的数据源,类型强制转换为 void* 指针。

       n-- 要被复制的字节数。

   例:memcpy(b,a,siceof a);

计算n的m次幂 #include pow(n,m)

字符串

string.pop_back 把字符串的最后一个字符删除

读入包含空格的字符串用

								fgets(名称,数量,stdin)  会将回车读入

								getline(cin,字符串)

字符串可以通过+运算连接字符

substr(起始索引,数量)

strcmp(str1,str2) 用于比较两个字符串并根据比较结果返回整数。

cin不读入空格,cout可以输出空格

stringstream ssin(string) 将字符串以流的方式读入,使得==》可以从字符串种直接提取需要的信息<

时间函数 int clock();

string.back()返回字符串的最后一个字符

string.pop_back去掉字符串最后一个字符

swap(a,b) 交换 a , b 的值(任意类型)

第一类双指针算法

使用了两个指针,求连续相同元素的个数

for(int i = 0;i<size;i++){ //i为初始指针,指向开头

int j = 1;	//j为工具指针,判断当前元素是否和s[i]相等

while(i<size&&s[i] == s[j]) 	j++;	//如果j所指元素与当前元素相等,则继续向前比较。

i = j-1; 	

}

猜你喜欢

转载自blog.csdn.net/weixin_44192389/article/details/109298032