C++佳实践 | 安全性
本系列是开源书C++BestPractises[1]的中文版,全书从工具、代码风格、安全性、可维护性、可移植性、多线程、性能、正确性等角度全面介绍了现代C++项目的佳实践。本文是该系列的第三篇。C++佳实践:1.工具2.代码风格3.安全性(本文)4.可维护性5.可移植性及多线程6.性能7.正确性
C++佳实践 | 可维护性
本系列是开源书C++BestPractises[1]的中文版,全书从工具、代码风格、安全性、可维护性、可移植性、多线程、性能、正确性等角度全面介绍了现代C++项目的佳实践。本文是该系列的第四篇。C++佳实践:1.工具2.代码风格3.安全性4.可维护性(本文)5.可移植性及多线程6.性能7.正确性
C++类设计和实现的十大最佳实践
C++代码提供了足够的灵活性,因此对于大部分工程师来说都很难把握。本文介绍了写好C++代码需要遵循的10个最佳实践,并在最后提供了一个工具可以帮助我们分析C++代码的健壮度。原文:10BestpracticestodesignandimplementaC++class1.尽可能尝试使用新的C++标准
编程语言如何实现?
今天的主题是AST(抽象语法树),AST听起来好像是个很新的东西,实际上我们平常用的SQL执行器、语言编译器、解释器都在大量使用,是词法语法解析的基础,掌握了对于理解编程语言非常有帮助。我们简单将这个词拆分抽象、语法、树,如果我们能够顺利将这个词拆分,那么我们也就掌握了其核心所在抽
为什么之前学c语言学得云里雾里,学完python后再回过头看c,很多问题都一目了然了?
为什么我之前学c语言学得云里雾里,学完python之后再回过头来看c语言,很多问题都一目了然了?”偶然看到这样的一个问题,简单说下自己的看法。一直认为:编程语言之间很多都是融汇贯通的,学好一门,其他语言都是可以触类旁通的。首先,两种语言的性质不同。Python是一
跟我从零开始学 C 语言系列(一)
今天开始跟我学,从零开始学C语言(一)让我们先来了解一下C语言。C语言是一种用途广泛、功能强大、使用灵活的语言,使用C语言既可以开发应用,又可以开发系统软件。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支
跟我从零开始学 C 语言系列(二)
今天开始跟我学,从零开始学C语言(二)今天我们来介绍C语言的数据类型、运算符和表达式。我们先来简单的看一个例子。【1.1】在屏幕上输出英文短句”Programmingisfun.“。#include/*编译处理命令*/intm
跟我从零开始学 C 语言系列(三)
今天开始跟我学,从零开始学C语言(三)今天我们来理解下C语言中的常量。常量是在程序执行过程中的,其值不发生改变的量,分为直接常量和符号常量。直接常量又分为整型常量、实型常量、字符串量和字符串量。1、整型常量。整型常量即整数,包括正整数,负整数和零。C语言中
跟我从零开始学 C 语言系列(四)
今天开始跟我学,从零开始学C语言(四)今天我们来讲C语言的变量,变量是指程序运行期间其值可以发生变化的量。变量用于从外部接收数据、保存一些不断变化的值、保存中间结果及终结果,而这些都无法用常量来实现。小白提示:在C语言中,所有的定义必须先定义后使用。变量
跟我从零开始学 C 语言系列(五)
今天开始跟我学,从零开始学C语言(五)今天我们来学习C语言中的运算符和表达符。C语言中赋值运算有”=“、”+=“、”-=“、”/=“和”%=“等。用赋值运算符将运算对象连接而成的表达式称为赋值表达式。简单的赋值运算符就是”=“,它的作用就是将一个数值赋给
跟我学 C 语言之顺序结构(上)
今天我们来讲讲C语言的顺序结构。所谓顺序结构就是按照程序代码的书写顺序,自上而下依次执行。我们来看一个例子,感受下顺序结构。【1.1】求华氏温度80℉对应的摄氏温度。#include//2023.1.30渔火Linux迷ww
跟我学 C 语言之顺序结构(下)
今天我们接续来讲C语言顺序结构。相关:跟我学C语言之顺序结构(上)我们来看下整型数据的输出和输入。【1.1】整型数据的输出#include//2023.1.31渔火Linux迷www.linuxmi.comintmain()
从零开始跟我学 C 语言之分支结构(上)
今天我们来讲分支结构。计算机在执行程序时,通常都是按照语句的书写顺序执行的,但在许多情况下需要根据条件选择所要执行的语句,这就选择所要的语句。C语言中用于实现分支结构的控制语句主要有:if语句、switch语句。我们来看一个例子感受下分支结构。【1.1】
从零开始跟我学 C 语言之分支结构(下)
今天我们继续来讲C语言的分支结构。在C语言里,可以使用if-else实现分支结构。1、双分支if语句。其一般形式为:if(表达式)语句1;else语句2;。我们来用双分支if语句来做一道简单的题目。【1.1】使用双分支语句求两个数中较大的数。#inclu
从零开始跟我学 C 语言之循环结构(上)
今天我们来学校C语言中的循环结构。循环结构是结构化程序设计中的基本结构之一。循环结构在程序设计中的应用很普遍,几乎所有具有实用价值的应用程序中都包含着循环结构。循环结构的特点是,可以完成有规律的、需要重复计算或处理的任务。C语言提供了for语句、whil
从零开始跟我学 C 语言之循环结构(下)
今天我们来讲用while语句和do-while语句实现循环结构。在C语言中,使用while语句完成不定次数的循环,如果满足循环条件,则反复执行循环体语句,当循环条件不满足时退出循环。while语句在使用时,总是先要判断一个条件,使用可以用while语句实
从零开始跟我学 C 语言分支结构
分支结构的代码题目,每道题都需要用到分支结构。【1】编写程序,输入有关月份值,输出该月份是第几季度。【2】根据键盘输入的年、月,输出该年该月的天数。【3】编写程序,判断输入的年份是否为闰年。【4】由键盘输入一个3位的整数,判断该数是否位升
为什么C++中有函数指针还需要std::function?
大家好,我是小风哥。C/C++中可以使用指针指向一段代码,这个指针就叫函数指针,假设有这样一段代码:#include<stdio.h>intfunc(inta){returna+1;}voidmain(){int(*f)(int)=func;printf("%p\n",f);}我们定义了
CPU竟然才是管理内存的大BOSS ?
大家好,我是小风哥。对于C/C++程序员来说,内存分配再正常不过,C语言中的malloc:int*a=(int*)malloc(sizeof(int));C++中的new:int*a=newint(10);接下来的问题是变量a占用的内存是谁给我们分配的呢?答案是运行在用户态的内存分配器,如果你愿意,
C 语言数组在内存中是怎样表示的?
大家好,我是小风哥,大家周末好呀。微信群里有同学问C语言中数组在内存中是怎样表示的,今天就给大家聊聊这个话题。开局一张图:这个是经典的Linux进程内存布局,通常我们使用的数据存在这样几个地方:栈区,Stack全局区,Global堆区,Heap接下来我们分别看一下C语言中的数组在这几个区域是怎样表示