C语言
甜甜米奇妙妙屋
这个作者很懒,什么都没留下…
展开
-
13.上机例题 2021 六月
例题原创 2021-06-24 20:53:39 · 67 阅读 · 0 评论 -
12.单链表
void Print_List(LinkList* plist) //单链表打印(1) 传递地址 更节省空间{ assert(plist != nullptr); ListNode* p = plist->head->next; while (p != nullptr) { printf("%5d", p->data); p = p->next; } printf("\n");}Print_List(&mylist);void Print_L原创 2021-06-22 19:08:04 · 46 阅读 · 0 评论 -
11.数据类型专题
数据类型:整形 char short int long int long long字节数 1 2 4 4 8float double long double4 8 8 /12/16bool1(void)char a;// 1000 0000 -128 (有符号)unsigned char b;//1000 0000 128 (无符号)原创 2021-06-22 19:07:56 · 61 阅读 · 0 评论 -
10.动态内存管理(2)
栈区∶我们知道栈区在函数被调时分配,用于存放函数的参数值,局部变量等值。在windows中栈的默认大小是1M,在vs 中可以设置栈区的大小。在Liunx中栈的默认大小是10M,在gcc编译时可以设置栈区的大小。堆区︰程序运行时可以在堆区动态地请求一定大小的内存,并在用完之后归还给堆区。在Liunx系统中堆区的大小接近3G。一般情况下我们需要大块内存或程序在运行的过程中才知道所需内存大小,我们就从堆区分配空间。int a = 10;int b = 1;int& c = a;const in原创 2021-06-22 19:07:47 · 82 阅读 · 0 评论 -
9.动态内存管理(1)
int main(){ int n = 5; //int* ip = (int*)malloc(4 * 5); int* ip = (int*)malloc(sizeof(int)); if (ip == nullptr) exit(EXIT_FAILURE); for (int i = 0;i < n;++i) { ip[i] = i + 10; } for (int i = 0;i < n;++i) { printf("%5d", ip[i]); } free原创 2021-06-22 19:07:27 · 49 阅读 · 0 评论 -
8.结构体(3)
结构体(3)结构体与动态内存void Unit_To_Str(char* buff, unsigned int ip){ assert(buff != nullptr); unsigned char x; char str[10]; for (int i = 0;i < sizeof(unsigned int);++i) { x = ip & 0x000000FF; ip = ip >> 8; _itoa_s(x, str, 10); //将整形转原创 2021-06-22 19:07:16 · 67 阅读 · 0 评论 -
7.结构体(2)
结构体(2)结构体的大小struct Student{ char s_id[10]; char s_name[10]; char s_sex[8]; int s_age;};//void Print_Student(struct Student stud[], int n)void Print_Student(struct Student *stud, int n) //sizeof(stud) //4字节{ assert(stud != nullptr); print原创 2021-06-22 19:07:09 · 67 阅读 · 0 评论 -
6.结构体(1)
结构体结构体为一种开发者自己设计的数据类型struct Studnt{ char s_id[10]; char s_name[10]; char s_sex[6]; int s_age;}; //";"必不可少原创 2021-06-22 19:06:50 · 72 阅读 · 0 评论 -
4.例题-输出数组中第一大和第二大的值
// 输出数组中第一大和第二大的值#include<stdio.h>#include<stdlib.h>#include<assert.h>#include<limits.h>void Print2Max(int* br, int n){ assert(br != nullptr&&n>1); int max1 = br[0] > br[1] ? br[0] : br[1]; int max2 = br[0] &原创 2021-06-22 19:06:22 · 114 阅读 · 0 评论 -
3.位运算
&(位与) |(位或) ^(异或) ~(位反)char;short;int;long int;longlong;不可进行位运算float;double;long double;pointer(指针)~(位反)c = ~a;//a = 0000 0000;//c = 1111 1111;^(异或)c = a ^ b;c = a ^ a;//c = >0000 0000(将该数置为零)|(位或)c = a || b;c = a | b;&(位与)c =原创 2021-06-22 19:05:56 · 54 阅读 · 0 评论 -
2.二级指针与二维数组
二级指针int main() //二级指针{ int a = 10, b = 20; int* p = nullptr; int** s = nullptr; s = &p; *s = &a; **s = 100; *s = &b; **s = 200; return 0;}(int型)s+1 int型二级指针 指向p1的地址(&p1)*s+1 int型一级指针 指向a1的地址(&a1)**s+1 int型原创 2021-06-22 19:05:43 · 1141 阅读 · 0 评论 -
1.C语言概述
C语言1.c语言类型整形 char short int long int long long字节数 1 2 4 4 8float double long double4 8 8 /12/16bool1(void)2.变量 常量变量是以某标识符为名字,其数值可以改变(可读,可写)。(可读(获取,可取值),可写(赋值)常量其值不可改变(只可读,不可写)。原创 2021-06-22 19:05:31 · 61 阅读 · 0 评论