【 tulaoshi.com - 编程语言 】
                             
                              C语言以其简洁、灵活、表达能力强,产生的目标代码质量高,可移植性好而著称于世。巧妙、灵活地运用C可以进一步挖掘出其潜在的功能。   
       1、字符数组和字符指针 
       指针和数组是C最具特色的一部分。数组是占用预分配的连续空间,C语言中对连续空间的访问可以有以下几种方法:加下标构成数组是最直接的;常量字符串也可以类似访问,例如,下面语句就可将字符串打印出来。 
       for(i=0;i15;i++) 
       putchar(″constant string″[i]); 
       函数printf()的格式串用字符数组代替,可以灵活地控制输出格式。下面的函数就可以根据参数改变输出格式。 
       Pr—int(int form,int data) 
     { 
     char str[50]; 
     sprintf(star,″%%%dd″,form); 
     printf(str,data); 
     } 
     2、C语言具有很强的内存格式编排功能,主要是通过sscanf()和sprintf()实现的。灵活运用这两个函数可以收到意想不到的效果。例如,数和数字串的转换是常需要的,利用这两个函数可以简单的实现。下面的函数func就实现数到数字串的转换,类似地可以实现其逆功能。 
     func(int d,char *str) 
     { 
     sprintf(str,″%d″,d); 
     } 
     3、动态多维数组 
     C语言本身并没有提供这类功能,而实践中确实经常需要。我们可以用C来实现。下面程序段就动态地实现了二维数组。 
     int,i,n,m, 
     double **a,x, 
     a=(double *)calloc(n,sizeof(double *)); 
     for (j=0;jn;j++) a[j]=(double *)calloc(m,sizeof(double)); 
     上面程序段定义a为指向指针的指针,然后给a分配一块内存,其格式为双精度指针,最后用for循环语句给指针分配空间,这样就相当于定义了a[n][m]。现在就可以用类似x=a[i][j]之类的语句访间数组元素了。三维甚至更多维动态数组可以类似实现