#include

#include

#include

#include

typedef struct _Person{

char name[20] ;

int age ;

}Person ;

//typedef struct _Student{

//    Person *p ;

//    float score ;

//}Student ;

Person *getPerson(){

static Person* p = NULL ;//或者放置全局变量里

if(NULL != p){

return p ;

}

p = (Person* )malloc(sizeof(Person)) ;

assert(NULL != p);

return p ;

}

int main(){

Person* p1 = getPerson() ;

const char *name = "zhangsan" ;

strncpy(p1->name , name , strlen(name)) ;

printf("name of p1 is %s\n" , p1->name) ;

Person *p2 = getPerson() ;

printf("name of p2 is %s\n" , p2->name) ;//

return 0 ;

}

输出:

name of p1 iszhangsan

name of p2 iszhangsan

参考:

1.http://blog.csdn.net/feixiaoxing/article/details/7071202

c语言单例模式,C语言之单例模式相关推荐

  1. Go 语言实现 23 种设计模式 单例模式

    Go 语言实现 23 种设计模式 单例模式 单例模式 单例模式是一种常用的软件设计模式,在使用过程中,单例对象的类只有一个实例.使用单例模式,1 可以节省内存等资源,例如windows操作系统的资源管 ...

  2. c语言表达式3178的值为,【C语言】C语言运算符

    c语言 &取地址运算符的理解 对于c语言中的&运算符,百度百科是这样定义的:(&p)则是这样一种运算,返回当时声明p 时开辟的地址:但是根据我对代码的观察,我觉得&am ...

  3. 多语言php,多语言 · ThinkPHP5.0完全开发手册 · 看云

    ThinkPHP内置通过`\think\Lang`类提供多语言支持,如果你的应用涉及到国际化的支持,那么可以定义相关的语言包文件.任何字符串形式的输出,都可以定义语言常量. ## 开启和加载语言包 默 ...

  4. 为什么要使用Go语言?Go语言的优势在哪里?

    链客,专为开发者而生,有问必答! 此文章来自区块链技术社区,未经允许拒绝转载. Go语言之所有越来越受到开发者的欢迎,我认为与其超高的实用价值密不可分.要知道Go语言是为了解决现实问题而设计的,而不是 ...

  5. java 全局变量_Java语言与C语言、C++语言有何差异以及优劣势

    差异 熟悉C语言和C++语言的读者一定想搞清楚这个问题,实际上,Java确实是从C语言和C++语言继承了许多成分,甚至可以将Java看成是类C语言发展和衍生的产物.比如Java语言的变量声明.操作符的 ...

  6. python是高级动态语言_Python动态语言之魅力揭秘

    之前的文章跟大家讲解了鸭子类型,其实鸭子类型是编程语言中动态类型语言中的一种设计风格.今天跟大家一起谈谈动态语言的魅力. 根据维基百科,动态编程语言是这样子定义的:动态编程语言是高级编程语言的一个类别 ...

  7. 自学编程是从python语言还是c语言开始-非计算机专业大学生想自学编程应该学C语言还是学Python?...

    之前总结的文章,分享过来,希望对你有帮助.windliang:到底学哪一门编程语言​zhuanlan.zhihu.com 发展进程 学哪一门编程语言,我们不妨先梳理一下语言的发展过程. 机器语言 计算 ...

  8. 脚本编程语言python语言-python语言是脚本语言吗

    Python是一种编程语言还是脚本语言? Python是GuidoVanRossum开发的最著名的编程语言之一.Python在开发人员中很受欢迎,因为它具有清晰的语法和简单的代码,甚至对于初学者来说也 ...

  9. 【Groovy】Groovy 动态语言特性 ( Groovy 语言与 Java 语言执行效率对比 | 以动态特性编译的 Groovy 类 | 以静态特性编译的 Groovy 类 )

    文章目录 一.以动态特性编译的 Groovy 类 二.Groovy 语言与 Java 语言执行效率对比 三.以静态特性编译的 Groovy 类 一.以动态特性编译的 Groovy 类 Groovy 类 ...

  10. 【Groovy】Groovy 语言特点简介 ( 支持 Java 语法 | 支持 Java 虚拟机 | Groovy 语言是动态语言 | Groovy 扩展 JDK | 编译时元编程 )

    文章目录 一.Groovy 支持 Java 语法 二.Groovy 支持 Java 虚拟机 三.Groovy 语言是 动态语言 四.Groovy 扩展 JDK 五.Groovy 编译时元编程 一.Gr ...

最新文章

  1. Git教程:最详细、最傻瓜、最浅显、真正手把手教!
  2. Javascript 数组
  3. 禁用Intel ME
  4. [Leetcode]@python 90. Subsets II.py
  5. python——实现简单的强化学习
  6. 回忆我的军训,好怀念那时啊!
  7. 纯php代码打印数据表
  8. 二阶滤波器原理及算法程序
  9. Ingenuous Cubrency UVA - 11137(完全背包)
  10. python饼状图显示其比例_python可视化:matplotlib绘制的饼状图你了解吗?
  11. python upd接收数据+动态折线图+线程间通信+字节计算
  12. java访问出现500错误_java – URLConnection不允许我访问Http错误的数据(404,500等)
  13. 菜 根 谭 [明] 洪应明
  14. English 英文邮件致谢的10种表达方式十种不同场合的英文表达
  15. nginx resolver
  16. Windows10软件显示模糊解决方案
  17. 微信小程序-快速上手
  18. 我下载了python所有包,24个G,用以备份
  19. netbox 导出 csv 中文乱码、时区修改
  20. sqli-labs 1~10关教程

热门文章

  1. javax.servlet.http.HttpServletResponse.setContentLengthLong(J)V,maven项目报错!!无法访问webapp下的文件,完美解决方案
  2. python word转pdf图片格式_Python将word转换为PDF格式文件(包括批处理转换),Word,Pdf,包含,批量...
  3. Oracle服务端的tsnname,【监听】tnsname.ora文件理解
  4. java我的世界1.6.2_我的世界1.6.2
  5. Ie和firefox的Javascript区别
  6. js es6 map 与 原生对象区别
  7. PyCharm黄色波浪线提示: Simplify chained comparison
  8. react native android 通知栏
  9. CSS中伪类选择器及伪元素
  10. Flash,EEPROM差别