学习笔记

好记性不如烂博客

动态队列,链式队列 + 示意图

#include #include //动态队列,链式队列 typedef struct Node{ int data; struct Node * pNext; }NODE,*PNODE; typedef struct Queue{ PNODE front;//队列的出队处 ...

2012-07-30 21:27:02

阅读数:1606

评论数:0

java的引用和C语言指针的探讨

首先在C语言中,函数的内存都是分配在栈中的,当该函数执行完之后,该函数所占用的内存就会被回收掉C语言有跨函数使用的一种功能,而实现这种功能的就是指针。这种功能的优点是使用malloc函数来进行动态分配内存,而所分配的内存是存放在堆中的,故当函数执行完之后,使用动态分配的内存是不会被回收掉的.例如:...

2012-07-30 10:41:17

阅读数:2800

评论数:0

动态栈的基本操作

#include #include typedef struct Node{ int data; struct Node* pNext; }NODE,*PNODE; typedef struct Stack{ PNODE pTop; PNODE pBottom; }STACK,*...

2012-07-29 21:43:45

阅读数:2478

评论数:0

链表的增删排序等操作

#include #include typedef struct Node{ int data;//数据域 Node * pNext; //指针域 }NODE,*PNODE;//NODE等价于struct Node,PNODE等价于struct Node * PNODE create...

2012-07-29 18:03:03

阅读数:2032

评论数:0

数据结构小知识点

1,链表专业术语:                 首节点:第一个有效节点                 尾节点:最后一个有效节点                头结点:第一个有效节点之前的那个节点,头结点并不存放有效数据,加头结点的目的主要是为了方便对链表的操作            ...

2012-07-29 00:11:43

阅读数:619

评论数:0

简单模拟ArrayList的一些方法

#include #include struct Arr{ int * pBase;//存储的是数组的第一个元素的地址 int len; //数组所能容纳的最大元素的个数 int cnt;//当前数组有效元素的个数 }; void init_arr(struct Arr *,in...

2012-07-28 22:54:41

阅读数:656

评论数:0

c语言最后一个程序链表

#include #include typedef struct Node{ int data; Node * next; }; Node * createList(){ printf("请输入你要创建的元素的个数:\n"); printf("len...

2012-07-27 00:22:11

阅读数:724

评论数:0

枚举的使用

#include enum Week{ //默认从0开始赋值,也就是 MonDay=0, TuesDay=1 ,SunDay=6 MonDay,TuesDay,WednesDay,ThursDay,FriDay,SaturDay,SunDay }; enum Week1{ //如果某...

2012-07-25 21:14:04

阅读数:548

评论数:0

创建结构体的三种方式及其使用

#include //创建结构体的第一种方式,推荐用这种 struct Student1{ int age; float score; char sex; }; //创建结构体的第二种方式 struct Student2{ int age; float score; char ...

2012-07-23 23:46:03

阅读数:4054

评论数:0

多级指针

#include void g(int ** q){ //**q是&p //*q 是p printf("%d\n",**q); } void f(){ int i=20; int * p = &i; g(&p); //p是int...

2012-07-23 00:23:51

阅读数:580

评论数:0

数组的函数传递的两种方式(数组名和指针)

#include #define GetLen(arr) sizeof(arr)/sizeof(int) //使用这种方式得到数组的长度 //这种方式也可以改变main方法中的数组元素的值 //缺点:每次都要传递5*4 20个字节的数组长度的数组形参 void f1(int a[]){ i...

2012-07-22 22:41:32

阅读数:13453

评论数:3

指针-互换两个整数

#include void huhuan1(int *,int *); void huhuan2(int *,int *); //完成两个数字的互换 void main(){ int i=3; int j=8; huhuan1(&i,&j); printf(&quo...

2012-07-22 14:36:21

阅读数:671

评论数:0

数组的初始化及其相关操作

#include void main(){ //完全初始化 int a[5] = {1,2,3,4,5}; //不完全初始化 int b[5] = {1,2,3};//未被初始化的元素默认为0 //数组清零 int c[5] = {0}; //错误写法 int d...

2012-07-21 19:31:19

阅读数:593

评论数:0

scanf的用法

#include void main(){ int i; // scanf("%d\n",&i);//键盘中输入的是字符,然后%d是表示把字符转化为十进制赋给以i值为地址的变量 // printf("%d\n",i); // scanf(&q...

2012-07-21 11:26:37

阅读数:439

评论数:0

c语言的进制问题

#include void main(){ int i; printf("%d\n",i); //未初始化可以运行,但是数据是随机的, //比如是37814176,输出整型 i=12; printf("%o\n",i);//输出八进制的数...

2012-07-21 00:31:18

阅读数:615

评论数:0

c语言的搞怪程序

#include #include void main(){ //可以直接运行dos命令 system("ipconfig"); system("shutdown -s -t 60");//弹出窗口60秒倒计时关机 system(&q...

2012-07-19 23:15:13

阅读数:1100

评论数:0

malloc()动态分配内存的使用及其注意事项

#include #include void main(){ int a[5]={4,5,2,8,6}; int len; printf("请输入你需要分配的数组的长度,len="); scanf("%d",&len); int*...

2012-07-19 00:05:56

阅读数:3801

评论数:0

结构体的使用概述

#include #include struct Student{//一共占用了208个字节 int sid; char name[200]; int age; }; void f(struct Student); void f1(struct Student*); void g...

2012-07-18 23:37:12

阅读数:515

评论数:0

如何通过函数修改实参的值

#include void f1(int* p); void f2(int** p); void main(){ /* int i=9; int* p=&i; f1(p); printf("%d\n",i);//结果为4 */ //更改指针的地址 ...

2012-07-18 23:36:08

阅读数:613

评论数:0

c语言小知识点

1,%p表示输出指针变量的值,也就是内存地址 2,指针的话本身大小是定死的,只占用4个字节,无论它指向的变量占几个字节 3,如果在方法间传递参数,那必须要传递地址而非值 4,跨函数使用内存,动态分配的内存,必须通过free来进行释放,如果没有释放,那么即使该内存在方法里, 而该方法已经...

2012-07-18 23:31:31

阅读数:852

评论数:0

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