#include using namespace std;#define
TestArrayLengthA(A) sizeof(A)/sizeof(*A)#define TestArrayLengthB(B)
sizeof(B)/sizeof(B[0])//这样测出的是数组可以放多少个元素,比如Ar...
分类:
其他好文 时间:
2014-05-12 19:46:09
阅读次数:
374
readdir()在多线程操作中不安全,Linux提供了readdir_r()实现多线程读取目录内容操作。#include
#include #include int main(void){ DIR* dirp; struct dirent
*dp1=malloc(sizeof(stru...
分类:
其他好文 时间:
2014-05-12 13:34:35
阅读次数:
914
char* psize=malloc(sizeof(char)*100)
返回的可用空间不止100个字节,这是因为
分配的内存块前面有4 或8个字节用来存储分配的内在空间的信息。
所以,如果假设前30个字节有效,释放后70个字节时, free(psize +30)这样的写法是错误的,因为首地址p后移30字节后,还是去读紧邻羞的前面的4或8个字节来确定后面的内存信息。
而 cha...
分类:
其他好文 时间:
2014-05-11 21:49:57
阅读次数:
306
思路:简单的匹配操作,利用栈。
Code:
#include
#include
char stack[135];
int main()
{
int n;
scanf("%d",&n);
getchar();
while(n-->0)
{
memset(stack,0,sizeof(stack));
char c;
int top=0;
int flag=1;...
分类:
其他好文 时间:
2014-05-11 20:19:34
阅读次数:
376
一.如何动态分配多维数组?
1.分配一个指针数组,然后把每个指针初始化为动态分配的行
代码如下:
int **array = (int **)malloc(ROW * sizeof(int*));
int i = 0;
for(i=0; i<ROW; i++){
array[i] = (int *)malloc(COL...
分类:
编程语言 时间:
2014-05-11 15:09:16
阅读次数:
349
#pragma pack (n) /*指定按n字节对齐*/ 不写这句默认n =8
设真正的对齐长度为m字节
如果n>结构体中数据类型(包括类类型)长度最大的数据类型长度,m = 结构体中最大数据类型长度
否则 m = n
总之,真正的对齐长度m为指定对齐长度n与结构体中最大类型长度中的较小值。
规则:
1. 结构体变量的首地址能够被m所整除;
2. 结构体每个...
分类:
其他好文 时间:
2014-05-11 13:32:36
阅读次数:
299
1. int cmp(const void *x,const void *y) {return
*(int*)y-*(int*)x;}//非增序
qsort(a,n,sizeof(a[0]),cmp);//参数分别为(首位置,个数,大小,比较函数)(后续更新)2.int num=unique(a,....
分类:
其他好文 时间:
2014-05-10 05:29:43
阅读次数:
284
int BubbleSort(int a[]){ int length =
sizeof(a)/sizeof(int); int i,j; int temp; for(i = 0;i i;j--) { if(a[j] <
a[j-1]) { ...
分类:
其他好文 时间:
2014-05-10 03:24:40
阅读次数:
233
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned
int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。
由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小...
分类:
其他好文 时间:
2014-05-09 16:11:21
阅读次数:
267