
C++
lichji2016
研究生小硕一枚...
展开
-
c++链表基础
一、链表的概念 链表是一种常见的重要的数据结构。它是动态地进行存储分配的一种结构。它可以根据需要开辟内存单元。链表有一个“头指针”变量,以head表示,它存放一个地址。该地址指向一个元素。链表中每一个元素称为“结点”,每个结点都应包括两个部分:一为用户需要用的实际数据,二为下一个结点的地址。因此,head指向第一个元素:第一个元素又指向第二个元素;……,直到最后一个元素,该元素不再指向其它元素,它称为“表尾”,它的地址部分放一个“NULL”(表示“空地址”),链表到此结束,以下为一个简单的...原创 2021-08-11 21:08:49 · 280 阅读 · 0 评论 -
学生管理系统简易版
一、项目需求:建立一个简单的学生管理系统,实现增删改查以及二级子菜单。知识点考察:排序方法方法、结构体、文件的读取等C语言基础知识点。二、功能模块简要分析主函数:启动程序主界面显示,菜单循环int main(){ DisPlay(); //显示登陆界面 Load(); //加载已经保存的相关学员信息,该信息采取相对路径方式,保存在项目文件夹中 while (Menu()) { } return 0;}其中Display和Load函数如下:Display()函数原创 2020-06-07 22:59:06 · 631 阅读 · 0 评论 -
C语言面试题
1.求某一年的某一天#include<stdio.h>struct SDate{ int nYear; int nMonth; int nDay;};int main(){ SDate dt; printf("请输入年月日:"); scanf_s("%d%d%d",&dt.nYear,&dt.nMonth,&dt.nDay); int mm[] = {31,28,31,30,31,30,31,31,30,31,30,31}; int i原创 2020-06-07 10:53:20 · 363 阅读 · 0 评论 -
C/C++中存储区域
1.C/C++中存储区域划分:1. 内存栈区((stack): 存放局部变量名;用完之后自动释放掉内存。2. 内存堆区(heap): 存放new或者malloc出来的对象;用完之后一般由程序员分配释放, 若程序员不释放容易造成内存泄漏,一般需要用free/delete手动释放掉内存,否则容易造成内存泄漏(因为C/C++中没有垃圾回收机制,在C#中有回收机制,可以不考虑)3. 常数区: 存放局部变量或者全局变量的值;4. 静态区(static): 用于存放全局变量或者静态变量;5. 代码区:二进制代转载 2020-06-01 21:12:49 · 243 阅读 · 0 评论 -
指针变量使用规则实例
#include<stdio.h>//指针变量使用规则int main(int argc,char*argv[]){ int a[10] = {1,2,3,4,5,6,7,8,9,10}; int *p = a;//int *p=&a[0]两者等价 int i = 0; while (i<sizeof(a)/sizeof(a[0])) { printf("p[%d]=%d,&p[i]=0x%p",i,p[i],i,&p[i]);//使用指针下标.原创 2020-05-31 21:47:55 · 273 阅读 · 0 评论 -
C语言常用函数详解
1.strtok()函数:原型:char *strtok(char s[], const char *delim);该函数目的和功能是:分解字符串为一组字符串。s为要分解的字符串,delim为分隔符字符串。当strtok()在参数s的字符串中发现参数delim中包含的分割字符时,则会将该字符改为\0 字符。在第一次调用时,strtok()必需给予参数s字符串,往后的调用则将参数s设置成NULL。每次调用成功则返回指向被分割出片段的指针。#include<stdio.h>#includ原创 2020-05-30 22:50:37 · 1615 阅读 · 0 评论 -
C指针简介
1.为什么需要指针第一,指针的使用使得不同区域的代码可以轻易的共享内存数据。当然你也可以通过数据的复制达到相同的效果,但是这样往往效率不太好,因为诸如结构体等大型数据,占用的字节数多,复制很消耗性能。但使用指针就可以很好的避免这个问题,因为任何类型的指针占用的字节数都是一样的(根据平台不同,有4字节或者8字节或者其他可能)。第二,指针使得一些复杂的链接性的数据结构的构建成为可能,比如链表,链式二叉树等等。第三,有些操作必须使用指针。如操作申请的堆内存。2.指针概念 指针是一个...原创 2020-05-28 23:01:43 · 603 阅读 · 0 评论 -
C/C++——求数组长度及反序
/*运行环境:vs2013*/#include<stdio.h>//要求在数组内将字符进行反序,并求输入字符串的大小int main(){ char s[20]; scanf_s("%s",&s,sizeof(s)); //此处必须增加字符串大小,否则编译 不通过 int i = 0, j = 0; //两个变量记录字符串开头及结尾位置 while (s[i]) ++i; //求得输入字符串长度 printf("你输入的.原创 2020-05-27 21:14:35 · 277 阅读 · 0 评论 -
C typedef---运用实例
typedef应用及用法一、typedef用法C 语言提供了typedef关键字,您可以使用它来为类型取一个新的名字。按照惯例,定义时会大写字母,以便提醒用户类型名称是一个象征性的缩写,如下:typedef unsigned int INT;typedef struct Student{ char name[20]; int age; int StuId;}STU;...原创 2020-05-22 06:49:47 · 345 阅读 · 0 评论 -
C语言手写模拟字符串String类
一、在C++语言中可以采用类库中String类进行相应的操作,本文通过手写字符串类的构造函数,析构函数,运算符重载模拟字符串相应的操作。二、定义MyString.h MyString,和main.cpp来进行模拟测试(编译环境VS2015)2.1 MyString.h类头文件#pragma once#include<iostream>using namespace s...原创 2020-06-02 06:34:41 · 373 阅读 · 0 评论 -
gcc编译详解
这些常用的 gcc/g++ 命令行参数,你都知道么?1. gcc -E source_file.c-E,只执行到预编译。直接输出预编译结果。2. gcc -S source_file.c -S,只执行到源代码到汇编代码的转换,输出汇编代码。3. gcc -c source_file.c-c,只执行到编译,输出目标文件。4. gcc (-E/S/c/) source_file...翻译 2019-07-13 07:19:21 · 465 阅读 · 0 评论 -
Win32窗体创建
#include<windows.h>//窗口过程函数LRESULT CALLBACK WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ switch (uMsg) { case WM_DESTROY: PostQuitMessage(0); break; default: break;...原创 2019-06-11 20:34:34 · 801 阅读 · 0 评论 -
MFC基础教程之窗口定义(一)
窗口定义窗口是 Windows 应用程序中一个非常重要的元素,一个 Windows 应用程序至少要有一个窗口,称为主窗口。窗口是屏幕上的一块矩形区域,是 Windows 应用程序与用户进行交互的接口。利用窗口可以接收用户的输入、以及显示输出。一个应用程序窗口通常都包含标题栏、菜单栏、系统菜单、最小化框、最大化框、 可调边框,有的还有滚动条。如下图:窗口可以分为客户区和非客户区, ...翻译 2019-06-10 23:05:13 · 999 阅读 · 0 评论 -
浅拷贝和深拷贝
浅拷贝就比如像引用类型,而深拷贝就比如值类型。 浅拷贝是指源对象与拷贝对象共用一份实体,仅仅是引用的变量不同(名称不同)。对其中任何一个对象的改动都会影响另外一个对象。举个例子,一个人一开始叫张三,后来改名叫李四了,可是还是同一个人,不管是张三缺胳膊少腿还是李四缺胳膊少腿,都是这个人倒霉。深拷贝是指源对象与拷贝对象互相独立,其中任何一个对象的改动都不会对另外一个对象造成影响。举个翻译 2016-06-13 23:33:06 · 215 阅读 · 0 评论 -
CreateWindow用法
#include #include "stdafx.h"#include // sprintf(szChar,"char is %d",wParam)LRESULT CALLBACK WinSunProc( //定义回调函数。 HWND hwnd, // handle to window UINT uMsg转载 2016-04-13 23:56:24 · 1691 阅读 · 0 评论 -
WINAPI WinMain
WINAPI WinMain用法转载 2016-04-13 23:19:22 · 932 阅读 · 0 评论