学习笔记
onxss
这个作者很懒,什么都没留下…
展开
-
C++入门:new/delete
可执行程序的内核虚拟空间:C的动态内存管理:realloc的风险:当内存不足时,之前malloc得到的内存空间丢失,造成内存泄露 malloc,realloc,calloc,free(free后一定要将指针置为空) fd越界标记C++的动态内存管理:new(运算符/关键字):1.4个动作:计算空间大小;malloc;初始化;返回首地址 2.int *p = new int (10);//开辟一个空间int *p = new int [10];//开辟一...原创 2022-05-21 00:36:06 · 284 阅读 · 0 评论 -
C++入门:引用,别名
1.*:乘号//变量式;单位运算符//解引用指针;声明//类型 * 标识符2.&:位与//a&b; 取地址符//&a 右操作数,没有左操作数;int &x = a//引用(别名),不存在别名的别名(二级引用) 不能定义所谓的空引用,必须初始化当传出的值为空,函数不可调用,算是一层安全控制3.int const& c = a;/...原创 2022-05-21 00:18:04 · 273 阅读 · 0 评论 -
C++入门:const与指针
当存在宏(_cplusplus)则以C++的方式编译,否则以C语言的方式进行编译const :在C和C++中的区别C语言中变量为主,C++中常性为主C:const int n = 5;int arr[n] = { 1, 2, 3, 4};//errorC++:const int n = 5;int arr[n] = { 1, 2, 3, 4};//ok//在C++中直接把值替换成对应的值常性针对变量:不可以改值,可以改变指针指向p2封锁了指向...原创 2022-05-21 00:08:42 · 166 阅读 · 0 评论 -
杨辉三角[一维数组,二维数组,无数组]
使用二维数组的规律:1.每一行第一个和最后一个都是12.brr[ i ][ j ] = brr[ i - 1 ][ j - 1 ] + brr[ i - 1 ][ j ]void Triangle_2(const int n)//二维数组{ int brr[100][100] = {0};//可以申请一个大的空间,也可以使用动态内存 int i = 0; int j = 1; for (i = 0; i < n; i++) { brr[i][0] = 1;//每一原创 2021-11-27 11:00:00 · 222 阅读 · 0 评论 -
变量总结[表格]
全局变量:定义在函数外面的变量 局部变量:定义在块内的变量 静态(static):静态关键字,可以用来修饰局部变量(不能形容形参)、全局变量和函数, 改变变量或函数的生命周期,默认值,作用域和链接属性 生存周期 作用域 默认值 内存区域 链接属性 静态全局变量 程序进入创建 程序退出死亡 整个文件内原创 2021-11-25 18:20:21 · 131 阅读 · 0 评论 -
数组前m位后调至数组尾部
#include<stdio.h>#include<assert.h>int* Rese(int *arr,const int len,int m)//函数体{ assert(arr != NULL); if (NULL == arr)//写左边,以防忘掉 return 0; int* p = arr; int brr[100] = {0};//无法确定,所以给个足够大的 int i = 0; for (i = 0; i ...原创 2021-11-16 21:37:59 · 92 阅读 · 0 评论 -
计算一段字符串中最长的单词
思路:1.认定连续字母即为单词 2.遇到'\0'即停止#include<stdio.h>#include<string.h>#include<assert.h>//最长单词int Longest(char* arr, const int len){ assert(arr != NULL); if (arr == NULL) { return 0; } int max_i = 0;//最长的单词第一个字母的位置 int ...原创 2021-11-10 20:15:20 · 241 阅读 · 0 评论 -
用函数输出1000以内所有水仙花数;求a+aa+aaa+aaaa+……的和
#include<stdio.h>#include<math.h>int SumS(int n,int m)//求a+aa+aaa……的和{ int tmp = m; int result=m; for (int i = 1; i <= n-1; i++) { m = tmp + m * 10; result += m; } return result;}int Narc(int n){ int n1; int n2; int n3; .原创 2021-11-10 19:56:00 · 519 阅读 · 0 评论 -
给一个五位数,求出位数并逆序输出
#include<stdio.h>int main() { int z; int i=0; int a, b, c, d, e; int tmp ; printf("please enter a number:"); scanf_s("%d", &z); if (z <= 0 || z > 99999) { printf("enter error"); } else { tmp = z; for (i = 0; z >= .原创 2021-11-10 19:50:47 · 3980 阅读 · 0 评论 -
if-else的两个练习
利用函数求三个数的最小值int Min(int a, ina b,int c){ int tmp; if (a > b) { if (b > c)//如果a>b,且b>c,则c最小 { tmp = c; } else//如果a>b,且c>b,则b最小 { tmp = b; } } else { if (a > c)//如果b>a,且a>c,则c最小 { tmp = c; } el.原创 2021-11-10 19:45:05 · 110 阅读 · 0 评论 -
函数和循环书写格式和部分注意事项
分支语句:switch语句:①不常用,经常和ifelse对比使用;②表达式只能是整型:char ,short, int, bool, long, long long,枚举③switch在进入时,会和所有标签对比一下,如果没有相同标签,则从缺省default进入,没有default则正常退出④遇到break正常退出 / switch正常退出⑤不能用浮点值/字符串的原...原创 2021-11-10 19:31:36 · 500 阅读 · 0 评论