硕士研究生毕业于南京邮电大学计算机应用技术专业,曾在中兴通讯从事软件开发工作,现就职于重庆某物联网技术公司,任高级嵌入式软件开发工程师。著有《C程序员从校园到职场》一书,同时也是《信息通信技术百科全书》的编者之一及CSDN博客专家。QQ(微信):245924426。
某一天,你正在埋头苦干,一封邮件嗖地一下发了过来。你打开一看,原来是开发经理要你去排查一个问题。既然老大都发话了,你能不照办吗?于是乎,你极不情愿地放下了手上的工作,打开了另外一个代码工程。
最近,我和一位同事合作设计数据库表。我们在设计好各个表之后,需要将表的基本信息记录下来,发给同项目组的同事参阅和评审。最开始,我们不是很清楚如何来描述每张表的信息。
一、问题描述 将多条记录写入文件中,每条记录占一行。每写入一条记录,要计算当前文件中所有记录的大小(精确到字节)和记录条数,并写到文件的第一行(即文件头)。
【文章摘要】 在C程序中,指针操作是难点和精华所在。指针一旦使用不当,极有可能造成程序的崩溃。 本文对一空指针引发的程序问题的排查过程进行了详细的介绍,为相关软件问题的分析及解决提供了有益的参考。
最近,我阅读了某新员工小刘写的C语言代码,发现其对结构体变量之间的赋值不是很熟悉。对于两个相同类型的结构体变量,他均采用的是逐个成员变量直接赋值的形式。
最近,我读了CSDN上面的一篇文章《API:互联网是如何在幕后工作的?》(http://www.csdn.net/article/2015-01-26/2823692)。
问题描述 实现一个简单的基于Windows的日志系统,要求写入日志文件的内容的样式如下: [时间]+[文件名]+[日志等级]+日志具体内容 如: [2015.
问题描述 某些软件在登录的时候,经常会要求用户输入一个系统发过来的随机密码(或称校验码),用于对用户的身份进行校验,防止恶意登录。
在实际的软件开发项目中,大家也许会遇到修改文件的后缀的需求(例如,将doc格式修改为docx格式)。本文提供了修改文件后缀的C语言实现,并演示了修改文件后缀的过程。
问题描述 有多个带后缀的用分号分隔的文件名(形如:1.xml;2.pdf;3.jpg;4.txt),编写C程序用于将满足后缀要求的第一个文件名找出来,并显示文件的类型。
开发出一款受用户欢迎的、十全十美的软件是每个软件开发工程师的梦想,但在现实条件下,受市场环境、公司氛围及自身水平等的影响,要开发出一款完美的软件几乎是不太可能的。
【文章摘要】 ASCII与Unicode是两种常见的字符编码。它们的表示方法不一样,因而在程序中就要区别处理。 本文基于作者的实际开发经验,对ASCII与Unicode两种字符编码消息的写文件过程进行了详细的分析,为相关软件开发工作的开展提供了有益的参考。
【文章摘要】 变量初始化看似很简单,但如果初始化位置不当或忘记初始化,则会导致程序行为异常。 本文基于作者的实际项目经验,对近期遇到的两起变量初始化问题进行了详细的分析,为相关软件问题的分析及解决提供了有益的参考。
CSDN的《畅言》栏目给大家自由表达个人意见的平台,实在是非常的不错。本人近期在上面发表的3篇文章如下: 1. 《程序员既要写好代码,又要写好文档》:http://www.csdn.net/article/2014-08-12/2821148 写作原因:在实际的软件开发项目中,很多同事把绝大部分的精力放在了写代码上,根本不注重文档的编写。
第3部分 软件研发工作总结 系统某模块工作原理详述 【文章摘要】 某模块在系统中占有非常重要的地位,该模块能够对符合条件的动态信箱进行清理。
最近我读了周鸿祎的新书《我的互联网方法论》,对其中的“用户体验”几个字的印象很是深刻。作者认为“用户体验”就是“超出了用户的预期的做法”。
第3部分 软件研发工作总结 VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改 【文章摘要】 Pclint是一种C/C++软件代码静态分析工具。
第3部分 软件研发工作总结 软件需求 软件工程师的工作职责是什么?一句话,就是完成软件需求。大家每天都接触到的软件,都是从软件需求一步步进化而来的。
第3部分 软件研发工作总结 自动测试 【文章摘要】 “百年大计,质量为先”。质量是企业的生命线,优秀的企业必然会推出高质量的产品,也势必会从产品研发的各个环节去保障产品的质量。
第3部分 软件研发工作总结 集成测试 【文章摘要】 一般的软件研发项目均涉及到多模块和多功能。在各个模块实现其功能之后,把相关模块结合起来进行集成测试以验证整个系统是否满足需求是很有必要的。
第3部分 软件研发工作总结 同行评审 在《浪潮之巅》这本书中,吴军老师描述了在Google早期的工作方式,其中有一段是这么写的:我一般会在吃完晚饭后把代码修改的清单发给克雷格做代码审核,他一般晚上10点左右会回复我,给我修改意见,详细到某一行多了一个空格。
第3部分 软件研发工作总结 首先是为人编写程序,其次才是计算机 “首先是为人编写程序,其次才是计算机”,这是软件开发的基本要点,软件的生命周期贯穿于产品的开发、测试、生产、发布、用户使用、版本升级和后期维护等长期过程中,只有易读、易维护的软件代码才具有生命力。
在实际的软件开发项目中,经常会有实现删除过期文件的需求。即要求程序能够自动删除多长时间之前生成的文件。本文提供了一个示例代码,为相关的开发工作提供了参考。
第3部分 软件研发工作总结 如何解决软件故障? 在软件产品的运营维护阶段,软件工程师的一项重要工作就是解决软件的bug。在学校的时候,大家学完一门课程,然后考试通过就万事大吉了。
【文章摘要】 本文以实际的C源程序为例子,介绍了Linux下的目录扫描函数(scandir)的使用方法,为相关开发工作的开展提供了有益的参考。
第3部分 软件研发工作总结 软件产品升级流程 一个软件产品做出来之后,并不是说永远都不用变了。基于以下的种种原因,我们需要对原软件产品进行升级: (1) 用户对软件功能提出了新的要求,现在运行的软件不能满足用户的新需求。
利用周末在家的时间,我总结了一下近期自己的阅读情况。工作之后,读书已经成为了一件很奢侈的事情了。 有以下几本书籍值得大家一读。
第3部分 软件研发工作总结 性能测试 【文章摘要】 对于通信领域的某些中间模块,其主要功能是对收到的消息进行处理然后发送,在两个模块之间充当了一个“桥梁”的作用。
最近收到一位程序员朋友的邮件,大致内容如下: 你好,我的技术博客http://blog.csdn.net/liujianfeng1984,希望能得到你的指点。
第3部分 软件研发工作总结 既要写好代码,又要写好文档 对于软件相关行业,在学校或单位上,大家也许都已经注意到了,除了要编写的程序、绘制设计图之外,还有一个重要的工作便是写文档。
在从事软件开发的过程中,经常会涉及到在Linux下将数据库脚本文件从sh格式变为sql格式的问题。本文以一个实际的脚本文件为例,说明格式转换的过程。
第3部分 软件研发工作总结 软件研发之殇 在经典著作《人月神话》中,作者提出了一个观点:绝大部分的软件研发项目都不能按期完成。我工作也有一段时间了,发现这确实是一个不争的事实。
第3部分 软件研发工作总结 完成第一个新需求 在入职后不久,我得到了第一个新任务:完成某个版本的一个新需求。所谓的“需求”,就是用文档的形式告诉我们要做什么,要实现什么功能。
第3部分 软件研发工作总结 研发流程初探 (本文是我到公司一个月后对于工作的一些感想,欢迎阅读。) 到公司实习已经有一个多月了,最近我完成了第一个正式任务。
【文章摘要】 本文以实际的C源程序为例子,介绍了Linux下的目录创建命令(mkdir)的使用方法,为相关开发工作的开展提供了有益的参考。
第2部分 数据库SQL语言 如何扩展数据表字段? 【文章摘要】 在通信类软件中,经常会与数据库打交道。由于需求变化,或者是程序优化升级等原因,对数据表字段进行扩展是常有的事情。
(本文参加 2014 CSDN博文大赛,谢谢。) 【文章摘要】 “没有规矩,不成方圆”,在实际的软件开发项目中,做任何事情都不是随心所欲的,我们编写代码需要遵守项目组约定的编程规范。
第2部分 数据库SQL语言 数据库的维护 对于某些大型软件产品,一旦商用,必然会存储很多用户信息,这就对产品所使用的数据库(以下简称业务数据库)带来了压力。
第2部分 数据库SQL语言 数据操纵语言(DML) 数据操纵语言(Data Manipulation Language,DML)包括insert、delete和update语句,用于增、删、改数据。
第2部分 数据库SQL语言 数据库索引 索引在数据库中占有非常重要的地位,它是对数据库表中一列或多列的值进行排序的一种结构。正确使用索引,可快速访问数据库表中的特定信息,进而提高数据库脚本的执行效率。
第2部分 数据库SQL语言 数据库脚本中的begin与end 在数据库脚本中,begin与end是一对奇怪的单词。缺少它们,某些代码看起来会让人一头雾水;添加它们,代码的结构瞬间就清晰了。
第2部分 数据库SQL语言 数据库脚本中的空行与空格 在数据库脚本中,空行与空格起着“锦上添花”的作用。恰当地使用它们,可以提高代码的规范性及可阅读性,进而提升数据库的编程效率。
在维护和开发通信类软件产品的过程中,经常需要处理一些软件故障问题。在问题刚出现的时候,大家可能显得手足无措,有一种天都要塌下来的感觉。但在问题原因找到之后,大家又会觉得问题原因非常的简单,要是当初开发的时候仔细一点,是不会犯这样的低级错误的。
【文章摘要】 在C语言中,结构体参数变量经常作为函数的参数来进行传递。但如果参数设置不当,会出现内存问题。 本文以实际的程序代码为例,详细地介绍如何正确地使用结构体参数变量,为相关的开发工作提供了参考。
第2部分 数据库SQL语言 数据库脚本文件的布局 “没有规矩,不成方圆”,规范数据库脚本文件的代码布局具有以下重要意义: (1) 可表现出代码良好的逻辑结构,提高代码的准确性、连续性、可读性及可维护性。
第2部分 数据库SQL语言 数据库表及索引的创建 数据表(或称表),是数据库最重要的组成部分之一。数据库只是一个框架,数据表才是其实质的内容。
在实际的软件开发项目中,经常会涉及唯一序列号的生成。本文以一个实际的程序为例,介绍了唯一序列号的生成过程。 本文生成的序列号的样式为:MMDDHHMINSS_XXXXXX。
第2部分 数据库SQL语言 数据库脚本的注释 1. 概述 注释在程序语言的编写中占有非常重要的地位。优美的、得当的注释不仅有助于研发人员理解程序,还能够提高编程效率(进而提高办事效率)。
第2部分 数据库SQL语言 数据库简介 数据库是个通用化的综合性的数据集合,它可以供各种用户共享且具有最小的冗余度和较高的数据与程序的独立性。
昨天,京东在美国上市了,你知道吗? 美国当地时间5月22日,京东在美国的纳斯达克成功上市,市值将近300亿美元,成为中国继腾讯和百度之后的第三大互联网上市公司。