Chinaunix首页 | 论坛 | 博客
  • 博客访问: 782554
  • 博文数量: 230
  • 博客积分: 6330
  • 博客等级: 准将
  • 技术积分: 2188
  • 用 户 组: 普通用户
  • 注册时间: 2009-07-10 15:55
个人简介

脚踏实地

文章分类

全部博文(230)

文章存档

2017年(1)

2016年(7)

2015年(10)

2014年(32)

2013年(24)

2012年(33)

2011年(50)

2010年(30)

2009年(43)

分类: C/C++

2010-03-10 23:09:55

1  回文数的递归实现:
 

#include <stdio.h>
void p(char * s,int i, int n){
 if(i>0){
  int j;
  for(j=i-1;j>0;--j) putchar(s[j]);
  for( j=1;j<i;++j) putchar(s[j]);
  putchar('\n');
  for(j=i-1;j>=0;--j) putchar(s[j]);
  for( j=1;j<i;++j) putchar(s[j]);
  putchar('\n');
 }
 if(i <n){
  char c;
  for(c='A';c <='C';++c){
   s[i]=c;
   p( s, i+1,n);
  }
 }
}
 int main(void){
  char s[3];
  p(s,0,3);
  return 0;
 }

2 只有gcc才能支持变量下标的语法,一般的编译器只支持常量的下标

3 CString到char*的转换 
CString Output_modelFileName("C:\\a.txt");
 char* output_filenameptr =Output_modelFileName.GetBuffer(Output_modelFileName.GetLength());

 


===============================

1 联合体的缺点就是优点不够突出. -《C专家编程》

  缺点: 类型模糊,可能会覆盖的,与结构体相比,节省空间

2 malloc和calloc

malloc()函数有一个参数,即要分配的内存空间的大小:

void*malloc(size_tsize);

calloc()函数有两个参数,分别为元素的数目和每个元素的大小,这两个参数的乘积就是要分配的内存空间的大小。

void*
calloc(size_tnumElements,size_tsizeOfElement);

如果调用成功,函数malloc()和函数calloc()都将返回所分配的内存空间的首地址。函数calloc() 会将所分配的内存空间中的每一位都初始化为零.,但malloc()得到的空间上有可能有悬垂的一些值,并非是0.


 

阅读(1705) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~