本文摘要: 本文主要讲述C语言中的数据类型,从基本的数据类型到派生的数据类型,从int ,char ,float double ....到指针,数组,函数,指向指针的指针,指向数组的指针,指向函数的指针,指针与数组的区别,指针作为函数参数,函数作为函数参数。作为例子,本文将通过通用链表结构来说明v....
分类:
编程语言 时间:
2015-03-29 00:26:30
阅读次数:
227
数组指针(也称行指针)
定义 int (*p)[n];
()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。也就是说执行p+1时,p要跨过n个整型数据的长度。
如要将二维数组赋给一指针,应这样赋值:
int a[3][4];
int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组。
p=a;...
分类:
编程语言 时间:
2015-03-20 14:32:55
阅读次数:
291
1.指针数组:顾名思义,指针数组就是数组里面元素都是指针,代码如下:#include int main(int argc, const char * argv[]) { // insert code here... //printf("Hello, World!\n"); int ...
分类:
编程语言 时间:
2015-03-20 06:42:01
阅读次数:
158
1.数组的定义和初始化
数组的维数必须使用大于等于一的常量表达式来定义,此常量表达式只能包含整型字面值常量,枚举类型,或者用常量表达式初始化的整型,非const变量和到运行阶段才知道其值的const变量都不能用来定义数组的维数
/** ok 字面值常量 */
int array[10];
/** ok 枚举类型*/
enum ARRAYSIZE{
SIZE1 = 10,...
分类:
编程语言 时间:
2015-03-14 17:02:09
阅读次数:
229
回调函数的格式如下: int sqlite_callback( ? ? void* pv,? ? /* 由 sqlite3_exec() 的第四个参数传递而来 */ ? ? int argc,? ? ? ? /* 表的列数 */ ? ? char** argv,? ? /* 指向查询结果的指针数组...
分类:
数据库 时间:
2015-03-13 16:51:40
阅读次数:
205
收拾房间,翻出一张信纸,想起来是以前看书时的笔记。如下: typedef double ( * fun-ptr ) ( int ); fun-ptr 指向"拥有一个int形参并返回double"的函数的指针。类比想象: double fun-name ( int a ); 行指针: do...
分类:
编程语言 时间:
2015-03-13 16:21:16
阅读次数:
147
恩,有的编译器初始化时候会产生这样的参数argc是命令行总的参数个数,argv[]是argc个参数,其中第0个参数是程序的全名1. 几种C++ 常见的参数种类int main(void);int main();int main(int argc, char **argv); //等价于int mai...
分类:
编程语言 时间:
2015-03-12 11:28:37
阅读次数:
176
指针数组:是一个数组,元素是指针类型int* pAddr[10];数组指针: 是一个指针int (*p)[3];说明: 定义的格式上,数组指针比指针数组多一个括号,记法: 指针比较麻烦
分类:
编程语言 时间:
2015-03-11 22:58:19
阅读次数:
149
#include
int main()
{
int arr[4][4] ={0,1,2,3,4,5,6,7,
8,9,10,11,12,13,14,15};
int i;
for(i=0;i<4;i++)
{
printf("使用arr+i求得二维数组arr第%d行的起始地址为:%d\n",i+1,arr+i);
}
printf("\n");
for(i=0;i<...
分类:
编程语言 时间:
2015-03-11 17:29:50
阅读次数:
143
在这以前曾经写过一篇关于函数指针数组文章,今天又看到了通信工程的应用,拷贝下来,作为参考!
http://blog.csdn.net/eliot_shao/article/details/8609259
1、数据结构的定义
typedef int (*IO_DETECT_FUCTION)(void);
typedef struct __IO_DETECT
{
int id;
...
分类:
编程语言 时间:
2015-03-11 14:47:10
阅读次数:
163