![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C语言基础知识
C语言基础知识
DQ_CODING
这个作者很懒,什么都没留下…
展开
-
C语言 文件的读写
引入OS操作系统原创 2021-08-23 00:04:05 · 991 阅读 · 0 评论 -
C语言 文件的基本介绍
基本介绍输入流与输出流重点在C程序(内存)的数据移动方向对于C程序(内存)输入数据:输入流输出数据:输出流C标准库标准输入输出库原创 2021-08-22 19:00:05 · 135 阅读 · 0 评论 -
C语言 项目 CRM系统(客户信息管理系统)
项目目标项目需求说明系统界面1)添加客户界面通过编号来区分客户2)删除客户界面对用户输入的编号进行核查,存在与否,合法与否3)显示客户列表界面项目设计Customer结构体的设计CRM系统结构框架图...原创 2021-08-22 12:19:29 · 3136 阅读 · 1 评论 -
C语言 项目练习-家庭收支软件
目标需求说明界面说明登记收入界面:登记支出界面收支明细界面退出界面自己完成的代码#include<stdio.h>#include<string.h>void choose(int button,int i);//项目--家庭收支软件static double total=10000;//总金额#define SIZE 100//用来接收收支信息struct Count{ char *name; double money; char原创 2021-08-21 20:06:24 · 486 阅读 · 0 评论 -
C语言 共用体/联合体 union
引入传统技术的缺陷—结构体共用体基本介绍共用体与结构体一样都是值传递定义共用体的三种方式内存布局共用体数据空间=占用最大的成员的数据空间大小案例解析1)2)3)4)注:1010 1101 0101 0100所对应的十进制是负数计算机中的二进制都是以补码存储的,所以1010 1101 0101 0100是补码计算时,补码=>反码=>原码补码=原码取反+1所以补码=>原码: 补码-1,再取反补码: 1010 1101 0101 0原创 2021-08-21 16:30:41 · 232 阅读 · 0 评论 -
C语言 结构体 struct Cat cat1;
引入使用传统技术解决需要定义多个变量或数组结构体与结构体变量的关系示意图类似Java类中的对象(结构体)与属性(结构体变量)一切物体都可以看作对象(结构体)补充:C语言数据类型案例代码Cat是我们自己定义的数据类型struct Cat cat1;//创建struct Cat的一个变量练习输入字符串,匹配person信息#include<stdio.h>#include<string.h>//结构体 struct//输入字符串,匹配pers原创 2021-08-20 21:30:48 · 395 阅读 · 0 评论 -
C语言 动态内存分配机制(堆区) int*p=malloc(5*sizeof(4))
C程序内存分配图栈区:局部变量堆区:动态分配的数据静态存储区/全局区:全局变量,静态数据代码区:代码,指令内存分配说明内存动态分配的相关函数堆区:#inlcude<stdlib.h>Malloc(size);//分配长度为size个字节的连续空间Calloc(n,size);//分配size个长度为n个字节的连续空间,总共有size*n个字节Free§;//释放指针p所指向的内存空间,如果内存空间没有被引用,则会被回收Realloc(p,size);//重新分配指针p原创 2021-08-20 16:45:38 · 685 阅读 · 0 评论 -
C语言 回调函数 produce(arr,len,getRand)
基本介绍回调函数:形参中包含另一个函数的函数指针用函数指针接收另一个函数案例代码解析具体代码#include<stdio.h>#include<stdlib.h>//回调函数--//函数原型int getRand();int *produce(int*arr,int len,int(*get)());int main(){ int arr[10]; int len=sizeof(arr)/sizeof(int); int i; //resu原创 2021-08-20 12:13:03 · 469 阅读 · 0 评论 -
C语言 函数指针 int(*ptr)(int,int)
基本介绍函数指针:指向函数的指针与数组类似定义Int(*pmax)(int ,int)=max;Int(*pmax)(int x,int y)=max;//形参名称不重要函数返回类型(*指针)(形参类型)=函数名称;具体案例代码:*pmax取到函数本身内存布局练习–大小写字母转换#include<stdio.h>//函数指针--char//函数原型char change(char c);int main(){ //函数指针p char(*p)(原创 2021-08-20 11:27:34 · 1284 阅读 · 0 评论 -
VC++软件
1.一个mainfatal error LNK1169: 找到一个或多个多重定义的符号–报错一个项目即一个程序,多个文件只能有一个main函数删除掉多余的main控制台按enter键闪退在代码中加上#include<stdlib.h>getchar();//让控制台停留system("pause");//让控制台暂停return 0;一些按键功能//调试–生成解决方案(只更新生成exe文件,不执行)//开始执行(不调试)–把编译,链接和执行放在一起了...原创 2021-04-19 16:21:33 · 107 阅读 · 1 评论 -
C语言 指针自增自减&加减运算 p++ p+i
介绍自增自减代码#include<stdio.h>#include<string.h>//指针自增--shortvoid increase(short *arr,int len){ int i; arr=&arr[0]; for(i=0;i<len;i++) { printf("arr[%d]=%d,address=%p\n",i,*arr,arr); arr++; }}//指针自减--charvoid decrease(char原创 2021-08-19 14:02:39 · 922 阅读 · 0 评论 -
C语言 返回指针的函数--指针函数 int* max(int a)
定义strlong示例代码代码1:#include<stdio.h>#include<string.h>//返回指针的函数//比较两个字符串,返回更长的字符串char *strlong(char* a,char* b){ char *p1=&a[0]; char *p2=&b[0]; while(true) { if(*p1=='\0') { return b; }else if(*p2=='\0') {原创 2021-08-19 23:41:25 · 526 阅读 · 0 评论 -
C语言常用字符串函数
概括代码#include<stdlib.h>#include<stdio.h>#include<string.h>int main(){ //常用字符串函数 char a[]="abcSDFbnm"; char b[]="SD"; printf("a的字符串长度:%d\n",strlen(a)); printf("b的字符串长度:%d\n",strlen(b)); printf("a与b比较:a=b返回0;a<b返回小于0;a>b原创 2021-08-17 20:15:38 · 116 阅读 · 0 评论 -
C语言二维数组 int arr[2][3]
基础使用先遍历行再遍历列#include<stdio.h>//二维数组的基本使用int main(){ //二维数组的初始化 int arr1[2][2]={{2,2},{0,0}}; int arr2[2][3]={2,2,2,8,8,8}; int arr3[6][9]; int i,j; for(i=0;i<6;i++) { for(j=0;j<9;j++) { arr3[i][j]=1; } } arr3[2][5]=0;原创 2021-08-18 19:28:29 · 1828 阅读 · 0 评论 -
C语言 指针数组-字符指针数组&整型指针数组 char*s[3] int*a[5] 数组指针int(*p)[4]
基本介绍1.指针数组:里面存的是指针Int *ptr[3];2.地址:ptr[i]:元素地址&ptr[i]:指针地址图示代码:内存布局:代码#include<stdio.h>#include<string.h>//指针数组--intvoid pointer(int *arr,int len){ int i, *ptr[10]; for(i=0;i<len;i++) { ptr[i]=&arr[i]; printf(原创 2021-08-19 14:58:01 · 712 阅读 · 0 评论 -
C语言顺序查找&二分查找
介绍顺序查找按照顺序一个个查找#include<stdio.h>//顺序查找int search(int arr[],int len,int aim){ int i; for(i=0;i<len;i++) { if(arr[i]==aim) { return i;//返回下标 } } return -1;//表示未查询到 }int main(){ int arr[]={13,355,256,65,234,-1,35,-6,-3,原创 2021-08-18 18:34:32 · 1070 阅读 · 0 评论 -
C语言指针-字符指针&整型指针char*s int*a
案例代码#include<stdio.h>#include<stdlib.h> #include<string.h>int main(){ //字符指针 char *pstr="good dog ww"; printf("字符指针指向的字符串内容:%s\n",pstr); printf("字符指针本身的地址:%p\n",&pstr); printf("字符指针指向的地址:%p\n",pstr); printf("字符串常量的地址:%p\n",原创 2021-08-17 18:59:16 · 1462 阅读 · 0 评论 -
C语言 多重指针--整型&字符&字符串 int**pp
介绍多重指针:一个指针指向另一个指针离值越近的指针级别越大:一级内存布局代码图示:多重指针–整型#include<stdio.h>#include<string.h>//多重指针--整型//二级指针void two(){ printf("二级指针:\n"); int a=896; int *p=&a,**pp=&p; printf("a=%d self-address=%p\n",a,&a); printf("a=%d原创 2021-08-19 18:27:58 · 679 阅读 · 0 评论 -
C语言冒泡排序
基本介绍分析过程每一轮将第几大地排到合适的位置相邻的两个元素进行比较,看是否需要交换位置代码演变1.每一轮的交换2.使用一个for循环将其包裹完整过程#include<stdio.h>//冒泡排序的函数void bubble(int arr[],int len){ int i,j,temp=0; //外层循环 for(i=0;i<len-1;i++) { //内层循环 for(j=0;j<len-1-i;j++) { //从小原创 2021-08-18 17:23:56 · 111 阅读 · 0 评论