自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 c++06

类之间的关系大体上分为:纵向关系,横向关系纵向关系就是继承关系横向关系大体分为4种:依赖关联聚合组合他们的强弱关系:依赖<关联<聚合<组合组合#include<iostream>using namespace std;class Hand{public: void Say() { cout << "hello" << endl; }};class Head{public: void Move()

2022-04-07 18:32:26 573

原创 c++05

const#include<iostream>using namespace std;//类中包含const成员变量 要在初始化列表中初始化class AA{public: const int a; int b;public: AA() : a(100) //初始化列表比在函数中赋值的要早 { b = 200; }public: void Show() { cout << a << endl; b = 300;

2022-04-03 18:11:52 558

原创 c++04

this指针#include<iostream>using namespace std;//空类的对象占1个字节//类中的成员变量 创建对象时才存在 每个对象都有自己独立的一份//类中的成员函数 编译期存在 只有一份 每个对象都可以使用//this 指针 关键字 指向当前调用本成员函数的对象//this指针只能在成员函数(非静态)中使用class AA{public: int a; char b; //有对齐public: void Show(/* AA* t

2022-04-01 13:16:41 258

原创 c++03

析构函数#include<iostream>using namespace std;class Student{public: char* m_name;public: Student(); //析构函数 ~ + 类名 //作用:对象销毁的时候,去销毁为这个对象开辟的辅助空间 ~Student();};Student::Student(){ m_name = new char[5]; m_name[0] = 'a'; m_name[1] = 'b'; m

2022-03-24 10:45:56 1050

原创 c++02

类和对象#include<iostream>using namespace std;//面向对象的三大特征 : 封装 继承 多态//类 是对数据和算法的封装 抽象概念//对象 真实存在的 通过类定义出来的变量就叫对象class Person{public: //成员属性 变量 //成员方法 方法 char* name; int age; bool Sex; void Eat() { cout << "干饭人" << endl;

2022-03-14 22:24:45 1279

原创 c++ 01

输入输出#include<iostream>using namespace std;int main(){ int a = 100; char str[] = "abcde"; cout << "Hello World" << endl; cout << a << " " << str << endl; cin >> a; cin >> str; cout <&lt

2022-03-14 14:03:57 648

原创 C语言20

栈#include<stdio.h>#include<stdlib.h>//栈 stack FIOL#define FALSE -1typedef struct Node{ int value; struct Node* pNext;}Stack;void S_Push(Stack** ppTop,int n){ Stack* pTemp = (Stack*)malloc(sizeof(Stack)); pTemp->value = n;

2022-03-13 14:13:57 707

原创 C语言19

双向链表#include<stdio.h>#include<stdlib.h>typedef struct Node{ int id; struct Node* pNext; struct Node* pLast;}List;void AddNode(List** ppHead,List** ppEnd,int id){ List* pTemp = (List*)malloc(sizeof(List)); pTemp->id = id; pTemp-

2022-03-11 13:53:00 422

原创 C语言通讯录

通讯录#include<stdio.h>#include<stdlib.h>#include<time.h>#include<string.h>typedef struct Node{ int id; char* name; char* tel; struct Node* pNext;}List;typedef struct PAGE{ int CurrentPage;//当前页 int OnePageInfo;//每页显示多少

2022-02-09 19:02:12 276

原创 C语言18

链表插入和删除#include<stdio.h>#include<stdlib.h>typedef struct Node{ int id; struct Node* pNext;}List;List* GetNode(int id){ List* pTemp = (List*)malloc(sizeof(List)); pTemp->id = id; pTemp->pNext = NULL; return pTemp;}void

2022-01-23 11:04:52 583

原创 C语言17

结构体对齐#include<stdio.h>struct AA{ char c; int a; short b; };struct BB{ int a; short b; double c; float d; char e; short f;};struct CC{ int a; char c[7];};int main(){ printf("%d\n",sizeof(struct AA)); printf("%d\n",sizeof(s

2022-01-19 21:20:26 573

原创 C语言16

getchar#include<stdio.h>int main(){ 阻塞函数 printf("%c\n",getchar());//在输入缓冲区取值 等待输入内容 输出 printf("%c\n", getchar()); printf("%c\n", getchar()); printf("%c\n", getchar()); printf("%c\n", getchar()); /*char i = 0; while (i != '\n') { print

2022-01-18 12:16:06 534

原创 c语言15

字符串练习#include<stdio.h>#include<string.h>typedef int BOOL;#define TURE 1#define FALSE 0int T1(char* str, char c){ int nMark = 0; while (*str != '\0') { if (*str == c) { return nMark; } str++; nMark++; } return -1;}ch

2022-01-17 14:34:37 147

原创 C语言14

srtcat#include<stdio.h>#include<string.h>char* MyStrcat(char* str1, char* str2){ char* pMark = str1; //1.找到str1结尾位置 while (*str1 != '\0') { str1++; } //2.遍历str2 将str2的元素放入str1 while (*str2 != '\0') { *str1 = *str2; str1++;

2022-01-15 13:33:07 175

原创 C语言13

静态变量#include<stdio.h>int* AA(){ static a = 100; a++; return &a;}//静态变量 //生命周期 出生 程序运行时 消亡 程序结束时//使用范围 定义在作用域内的 所在作用域内 定义在作用域外的 本源文件内//特性 默认初始化为0 静态变量只初始化一次//静态内存的两块内存分配 BSS 数据段//BSS 未初始化的全局/静态变量//数据段 初始化的全局/静态变量in

2022-01-14 11:55:06 249

原创 C语言12

位运算#include<stdio.h>int main(){ // & 与 都是1为1 // | 或 有1为1 // ~ 取反 1变0 0变1 // ^ 异或 相同为0 不同为1 // << 左移 补0 // >> 右移 补符号位的值 int a = 1; int b = 2; a = a ^ b; b = a ^ b; a = a ^ b; return 0;}栈区#include<stdio.

2022-01-12 18:25:58 213

原创 C语言11

函数指针#include<stdio.h>typedef int(*Pfun)(int,int);void AA(){ printf("AA\n");}int Add(int a, int b){ return a + b;}int main(){ //函数调用的本质 函数地址 + 参数 //函数名就代表函数的地址 /*AA(); (&AA)(); void (*pfun)() = &AA; (*pfun)();*/ printf("

2022-01-11 11:58:13 139

原创 C语言10

函数#include<stdio.h>//对步骤的封装//声明函数//定义(实现)函数//调用函数//函数声明//返回值函数 + 函数名 + 参数 ;//返回值类型 int char int* char* void 返回值只能有一个//函数名 不要与系统函数重名 C语言中函数不允许重名//参数 数量 0~n (参数类型 参数名(可以不写),)void Print();int ADD();int ADD1(int,int);int main(){

2022-01-10 12:47:19 270

原创 C语言09

const#include<stdio.h>//const 是一个关键字 定义常量//const 修饰的变量不可修改//const 修饰的变量必须初始化int main(){ const int a = 200; const int* p1 = &a; int* const p2 = &a; int const* const p3 = &a; //const 在*号的左面 p能改 *p不能改 //const 在*号的右面 p不能改 *p

2022-01-08 11:27:46 361

原创 C语言08

二维数组 int arr[3][4] = { 1,2,3,4,5,6,7,8,9,10,11,12 }; int arr1[3][4] = { {1,2,3,4},{5,6,7,8},{9,10,11,12} }; int arr2[3][4] = { 1,2,3,4,5 }; int arr3[3][4] = { {1} ,{2}, {3} }; int arr4[][3] = {1,2,3,4}; //下标访问 arr[1][2] = 70; //遍历 int i, j;

2022-01-07 13:17:53 361

原创 C语言07

下标访问的原理 int arr[10] = {1,2,3,4,5,6,7,8,9,10}; int i; for (i = 0; i < 10; i++) { printf("%d\n",*(arr + i)); } //下标访问[]的作用 偏移 + 间接引用 先偏移后引用 []里的数值为偏移量 //数组名一边情况下代表首元素的地址 //当数组名与&或sizeof结合代表整个数组 //对整个数组的地址间接引用得到首元素的地址 //数组名是一个常量

2022-01-06 16:28:36 221

原创 C语言06

大小端存储int a = 0; char* p = &a; *p = 63; *(p + 1) = 66; *(p + 2) = 15; *(p + 3) = 0; printf("%d\n",a);大端存储 :低地址存高位小端存储 :低地址存低位主机字节序 小端存储网络字节序 大端存储拆字节的时候和网络 要注意大小端存储指针注意事项不要操作不属于本程序的内存当一个指针一开始不知道指向哪里的时候,让它指向NULL指针指向NULL 表示该指针不指向任何空间定

2022-01-04 12:03:38 418

原创 C语言05

数据存储unsigned char a = 255; a++; printf("%d\n",a); a--; printf("%d\n",a); /*char a = 127; a++; printf("%d\n",a); a--; printf("%d\n",a);*/在计算机系统中,数值一律用补码来存储输出指针的格式符为%p地址是由八个十六进制的数组成的(32位)取地址取到的是首字节的地址间接引用:* + 地址地址不额外占用空间指针的本质 : 存

2021-12-31 12:04:12 404

原创 C语言04

++int a = 1; printf("%d\n", a++); printf("%d\n",a); //右++ 返回++之前的值 //左++ 返回++之后的值这里只针对visual studio 其他编译器不知道短路求值int a = 0; int b = 1; a++ && b++;//a的返回值为0 整体为假 所以后面不执行 a++ || b++;//a的返回值为1 整体为真 所以后面不执行 printf("%d %d\n",a,b);最后输

2021-12-31 09:13:35 190

原创 C语言03

打印三角星 int h;//行号 int k;//空格 int x;//星号 for (h = 1; h <= 5; h++) { for (k = 1; k <= 5 - h; k++) { printf(" "); } for (x = 1; x <= 2 * h - 1; x++) { printf("*"); } printf("\n"); }打印99表格int h; int l; for (h = 1; h

2021-12-29 12:02:20 482

原创 C语言02

switch在其他情况的时候用default若无break则会继续执行 直至下一个break或switch结束case的值是与()内的值对应不要忘记()和breakint cs = 1; switch (cs)//整形变量或整形变量表达式 { case 1: printf("剪刀\n"); break; case 2: printf("石头\n"); break; case 3: printf("布\n"); break; default:

2021-12-28 11:58:03 139

原创 C语言01

int a = 'xyz';printf("%c\n",a);这个函数会输出z 相当于把xyz分别赋值给变量afloat a = 3.1415926;printf("%.3f\n",a);这个会输出3.142 这玩意有四舍五入

2021-12-27 17:41:43 273

原创 note

DOS命令:dos命令窗口:笔记本键盘win+R 输入cmd常见命令:-exit 退出窗口-cls 清屏-选中后右键即可复制dos窗口内选中的内容-dir 列出当前目录下所有的子文件/子目录-mkdir 创建一个目录(非必须) 后面接名字 例:C:\Users\frank>mkdir 123 就是创建一个在frank里创建一个叫123的目录-cd 命令*cd命令表示:change directory[改变目录]*用法:cd 路径(相对路径 绝对路径)*路径分为绝对路径和相对路径

2021-02-15 15:07:25 77

原创 第一次使用markdown

标题 前面一个#二级标题 前面两个#三级标题四级标题引用大于符号加空格 即可引用字体hello world**hello world **hello worldhello world分割线—即可表示分割线 或者***图片即可插入图片[]内写入名称 路径既可以是网上的 也可以是本地的超链接名称英文格式列表巴拉巴拉、表格姓名性别生日张三男2001姓名|性别|生日–|--|–张三|男|2001然后再到源代码

2021-02-04 11:38:08 51

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除