static 静态全局变量 按照实型关键字成员有序的结构体数组的对分查找
来源:互联网 发布:百分百qq采集软件 编辑:程序博客网 时间:2024/04/28 05:57
在查看“按照实型关键字成员有序的结构体数组的对分查找”的算法时候,在VS上调试一下,发现很多错误。
int rbkey(p,n,a,b,m)
int n,*m;
BISERCH *p[];
double a,b;
{ int i,j,k;
i=1; j=n;
while (i<=j)
{ k=(i+j)/2;
if (((*p[k-1]).KEY>=a)&&((*p[k-1]).KEY<=b))
{ i=k-1; j=0;
while ((i>=0)&&((*p[i]).KEY>=a))
{ i=i-1; j=j+1;}
i=i+1;
while ((k<=n-1)&&((*p[k]).KEY<=b))
{ k=k+1; j=j+1;}
*m=j; return(i);
}
if ((*p[k-1]).KEY>b) j=k-1;
else i=k+1;
}
while ((i>=0)&&(b<(*p[i]).KEY)) i=i-1;
i=i+1; *m=0;
return(i);
}
利用主函数调用结构体排序函数rkey(),和上述的rbkey()。rkey()是结构体排序函数。但是在运行过程中出现错误:
1>f:\algorithm\16\16rbkey\16rbkey\16rbkey.c(7): error C2011: “student”:“struct”类型重定义
1> f:\algorithm\16\16rbkey\16rbkey\16rbkey.c(7) : 参见“student”的声明
1>f:\algorithm\16\16rbkey\16rbkey\16rbkey.c(15): error C2084: 函数“int rbkey()”已有主体
1> f:\algorithm\16\16rbkey\16rbkey\16rbkey.c(14) : 参见“rbkey”的前一个定义
原来是static的问题。
一个完整的程序在内存中分布是:
代码区
全局数据区
堆区
栈区
静态全局变量不能被其它函数调用,即使其它函数使用相同名字也不会冲突,这是它的好处。
- static 静态全局变量 按照实型关键字成员有序的结构体数组的对分查找
- 有序数组的二分法查找关键字
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组、
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- 有序的结构体数组
- hdu --- The Euler function
- fckeditor文字居中问题
- Visual Basic的循环结构
- COBOL程序示例
- Java之查表法实现进制转换
- static 静态全局变量 按照实型关键字成员有序的结构体数组的对分查找
- poj 1325 Machine Schedule
- shopex采集发布接口 shopex火车头数据采集器(20120812更新) 使用火车头接口技术一键批量采集 批量发布 批量去水印 接口技术
- 位操作基础篇之位操作全面总结
- 《数据结构与算法分析--c语言描述》之第一章:引论
- Java之折半查找数据
- JSP和Servlet的中文乱码处理
- C读取文件
- LINUX查看硬件配置 命令