设为首页 加入收藏

TOP

C语言 指针 地址算数运算 字符指针 指针数组 多维数组 函数指针(五)
2014-11-23 19:55:51 来源: 作者: 【 】 浏览:61
Tags:语言 指针 地址 算数 运算 字符 多维 函数
th_name(int n) { /* * 初始化指针数组, 指针数组中的元素指向一个字符串 */ static char *name[] = { Illegal month, January, Febrary, March, April, May, June, July, August, September, October, November, December }; printf(sizeof(name) = %d , sizeof(name)); //返回一个指针, 这个指针指向字符串 return (n < 1 || n > 12) name[0] : name[n]; } int main(int argc, char **argv) { printf(month 2 is %s , month_name(2)); return 0; }
执行结果 :

[root@ip28 pointer]# gcc montn_name.c                               
[root@ip28 pointer]# ./a.out 
sizeof(name) = 104 
month 2 is Febrary 


二维数组示例程序 :

/*************************************************************************
    > File Name: montn_name.c
    > Author: octopus
    > Mail: octopus_work.163.com 
    > Created Time: Wed 19 Mar 2014 12:58:48 AM CST
 ************************************************************************/

#include
  
   

char *month_name(int n)
{
        /*
         * 初始化指针数组, 指针数组中的元素指向一个字符串
         */
        static char name[][20] = {
                Illegal month, 
                January, Febrary, March,
                April, May, June,
                July, August, September,
                October, November, December
        };

        printf(sizeof(name) = %d 
, sizeof(name));

        //返回一个指针, 这个指针指向字符串
        return (n < 1 || n > 12)   name[0] : name[n];
}

int main(int argc, char **argv)
{
        printf(month 2 is %s 
, month_name(2));
        return 0;
}
  

执行结果 :

[root@ip28 pointer]# gcc month_array.c           
[root@ip28 pointer]# ./a.out 
sizeof(name) = 260 
month 2 is Febrary 


对比 : 二维数组 占用了 260 字节内存, 指针数组占用了 104字节的内存;

.

作者 : 万境绝尘

转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/21402047

.


首页 上一页 2 3 4 5 下一页 尾页 5/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇深入理解 C 指针阅读笔记 -- 第一.. 下一篇深入理解C语言-08 库函数

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: