随笔分类 -  c语言学习

在学习linux的时候,对c语言进行一个复习、总结
( ( (int(*)(uint, ushort, uint *, uint, int)) (*((uint *)(TCM_BASE + 0x8))) ) (a,b,c,d,e) )
摘要:(((int(*)(uint, ushort, uint *, uint, int))(*((uint *)(TCM_BASE + 0x8))))(a,b,c,d,e))首先红色字部分:(*((uint *)(TCM_BASE + 0x8))),((uint *)(TCM_BASE + 0x8))将... 阅读全文

posted @ 2015-01-27 23:03 n哖苡逅 阅读(1535) 评论(0) 推荐(0)

initializer element is not constant 问题
摘要:在Ubuntu下,比葫芦画瓢,写了一个程序,居然报错!!!! 1 #include 2 3 float i = 3; 4 int j = *(int *)(&i) ; 5 6 int main (int argc , char *argv[]) 7 { 8 printf( "i = %... 阅读全文

posted @ 2015-01-26 20:03 n哖苡逅 阅读(29551) 评论(0) 推荐(0)

void及void *的理解
摘要:许多初学者对 C/C++语言中的 void 及 void 指针类型不甚理解,因此在使用上出现了一些错误。本文将对 void 关键字的深刻含义进行解说,并详述 void 及void指针类型的使用方法与技巧。 void 的含义 void 的字面意思是“无类型”,void *则为“无类型指针”,void *可以指向任何类型的数据。void 几乎只有“注释”和限制程序的作用,因为从来没有人会定义一个void 变量,让我们试着来定义:void a; 这行语句编译时会出错,提示“illegal use of type ’void’”。不过,即使 void a的编译不会出错,它也没有任何实际意义。 void 阅读全文

posted @ 2012-03-31 17:51 n哖苡逅 阅读(871) 评论(0) 推荐(0)

函数指针和指针函数
摘要:一、函数指针 函数指针是指向函数的指针变量。 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数。这正如用指针变量可指向整型变量、字符型、数组一样,这里是指向函数。如前所述,C在编译时,每一个函数都有一个入口地址,该入口地址就是函数指针所指向的地址。有了指向函数的指针变量后,可用该指针变量调用函数,就如同用指针变量可引用其他类型变量一样,在这些概念上是一致的。函数指针有两个用途:调用函数和做函数的参数。函数指针的声明方法为: 函数类型 (标志符指针变量名) (形参列表); 注1:“函数类型”说明函数的返回类型,“(标志符 指针变量名 )”中的括号不能省,若省略整体则成为一个函... 阅读全文

posted @ 2012-03-31 17:38 n哖苡逅 阅读(617) 评论(1) 推荐(1)

linux系统调用和库函数调用
摘要:Linux下对文件操作有两种方式:系统调用(system call)和库函数调用(Library functions)。可以参考《Linux程序设计》(英文原版为《Beginning Linux Programming》,作者是Neil Matthew和Richard Stones)第三章: Working with files。 1. 系统调用系统调用提供的函数如open, close, read, write, ioctl等,需包含头文件unistd.h。以write为例:其函数原型为 size_t write(int fd, const void *buf, size_t nbytes) 阅读全文

posted @ 2012-03-30 14:56 n哖苡逅 阅读(1345) 评论(0) 推荐(0)

C语言中.h和.c文件解析(很精彩)
摘要:简单的说其实要理解C文件与头文件(即.h)有什么不同之处,首先需要弄明白编译器的工作过程,一般说来编译器会做以下几个过程: 1.预处理阶段 2.词法与语法分析阶段 3.编译阶段,首先编译成纯汇编语句,再将之汇编成跟CPU相关的二进制码,生成各个目标文件 (.obj文件) 4.连接阶段,将各个目标文件中的各段代码进行绝对地址定位,生成跟特定平台相关的可执行文件,当然,最后还可以用objcopy生成纯二进制码,也就是去掉了文件格式信息。(生成.exe文件) 编译器在编译时是以C文件为单位进行的,也就是说如果你的项目中一个C文件都没有,那么你的项目将无法编译,连接器是以目标文件为单位... 阅读全文

posted @ 2012-03-30 12:39 n哖苡逅 阅读(135155) 评论(10) 推荐(35)

导航