2012 11 04学习记录
来源:互联网 发布:雷蒙德罗维 知乎 编辑:程序博客网 时间:2024/06/09 22:40
1、头文件不能包含C函数,除非是内敛函数。
头文件布局格式
版权声明
#ifndef ***
#define
头文件;
宏;
结构体定义或结构体声明;
内联函数(函数代码不超过10行);
函数声明;
#endif
2、在32位系统中sizeof(指针)=4
一般char *c=”hello”;
则sizeof(c)=4;
Char c[]=”hello”;
那么,sizeof(c)=数组的长度+1=6;
原理:第一个,定义一个指针变量,指针指向的是“hello”,而单独的指针在32位系统 下就是4个直接;
第二个,就是求数组的大小,这里就不讲了。
注意,这个知识点招聘常考。
3、利用goto反向操作来处理函数之前带来的错误。
4、Var=5
置56位位1:
BIT=0x02<<5;
var|=BIT;
若要将var的56位反转,那么先将11左移5位,然后再与var异或;
var^=(0x03<<5)
使用宏实现位操作:
#define CLR_BIT(var,bit) var &=(~(1<<(bit))) //set a bit to 0
#define SET_BIT(var,bit) var |=(1<<(bit)) //set a bit to 1
#define GET_BIT(var,bit) (var>>(bit)) & 1 //get a value of bit
#define INV_BIT(var,bit) var ^=(1<<(bit)) //inverte a bit
如果你想要把某两位置为10或者01,那么你要先将那两位置0,或者置1,然后再将 对应为置为1,或者0。
5、linux下SVN简单操作:
svn add (file) 添加文件
svn ci -m”massage” 上传文件到服务器,并添加massage
svn lock -m“LockMessage“ svn unlock PATH 加锁/解锁
删除文件
svn delete path -m “delete test fle“
例如:svn delete svn://192.168.1.1/pro/domain/test.c -m “delete test file”
或者直接svn delete test.c 然后再svn ci -m ‘delete test file‘,推荐使用这种
简写:svn (del, remove, rm)
6、操作单向链表
遍历链表:
for(ptr=head; ptr-next!=NULL; prt=ptr->next)
判断链表是否为空:比如 line *list
if(!list)
Return 1;
int is_empty_list(line *list)
{
if(!list)
return 1;
return !head->next;
}
清空链表:memset(list,0,sizeof(line));
在链表末添加一个元素:
Int add_item_tail(list *head, list *node)
{
List *ptr = NULL;
For(ptr=head; ptr->next!=NULL; ptr->next)
;
Ptr->next=node;
Node->next=NULL;
}
在链表中删除head后一个节点:
int del_item_head(list *head)
{
list *ptr=NULL;
ptr=head->next;
head->next=ptr-next;
free(ptr);
}
删除链表:
int del_list(list *head)
{
list *ptr;
for(ptr=head->next; NULL!=ptr; ptr=head->next)
{
head->next=ptr->next;
free(ptr);
}
}
结构体赋值
int cpoy(list *dest,list *src)
{
dest=src; //C99标准
}
7、双向链表
添加新元素:不论是什么链表,一个原则,先加上新的,再剪断旧的;
A
data
p
next
B
data
p
next
C
data
p
next
先是new->next=B->data; new->p=A->data; A->next=new->data; B->p=new->data
删除元素:原则:先让新指针指向要删除的元素,然后以先下行,再上行,或者先下行,再上行,最后free
。。。
。。。
- 2012 11 04学习记录
- 暑期学习记录04
- Linux0.11学习记录
- 暑期学习记录11
- swift学习记录04-杂记
- 2017.7.04 学习记录 Servler
- 2017.7.04 学习记录 servlet
- 11月份的学习记录
- Java学习记录(11)
- linux学习记录11月
- 一 javase学习记录11
- 11、JavaScript 学习记录-基础
- 我的学习记录11
- IOS学习记录--Objective-C--2012-11-14
- --学习记录
- 学习记录
- 学习记录
- 学习记录
- 什么是NP问题
- 索引的创建原则
- 开源GIS系统
- Problem 1012 u Calculate e C语言结题报告
- DirectShow中网络播放器的源Source Filter
- 2012 11 04学习记录
- VBScript/VBA批量合并多个Word文件到一个文件
- SQL Join的用法
- 何谓差模信号?何谓共模信号?
- Problem 1023 View Code C语言代码
- Hdu 3293 - sort
- 封装、继承、多态是面向对象编程的三个本质特征。
- SQL UNION 操作符
- poj 1753 Flip Game