`

编程常识的学习

 
阅读更多

程序编译一般需经预处理、编译、汇编和链接几个步骤。在我们的应用中,有一些公共代码是需要反复使用,就把这些代码编译为“库”文件;在链接步骤中,连接器将从库文件取得所需的代码,复制到生成的可执行文件中。这种库称为静态库,其特点是可执行文件中包含了库代码的一份完整拷贝;缺点就是被多次使用就会有多份冗余拷贝。

静态库和动态库是两种共享程序代码的方式,它们的区别是:静态库在程序的链接阶段被复制到了程序中,和程序运行的时候没有关系;动态库在链接阶段没有被复制到程序中,而是程序在运行时由系统动态加载到内存中供程序调用。使用动态库的优点是系统只需载入一次动态库,不同的程序可以得到内存中相同的动态库的复本,因此节省了很多内存。

反思:

1. 常量尽可能使用 int 类型,尽量少用字符串类型;

2. 对文件的存储可以向对数据库的操作一样,写成一个或几个类,对文件的操作方法集中起来,不要写的到处都是;

3. 对网络的操作,可以分开写,但是一些共同的代码考虑是否可以抽出来写成一个类方法;

4. 网络的基础知识学习;

==============================================================

类型是所有程序的基础,类型告诉我们数据代表什么意思以及可以对数据执行哪些操作。

静态类型 (statically typed) 语言:在编译时执行类型检查,在使用某个某个名字之前,必须先告知编译器改名字的类型,c++ 和 java 都是静态类型语言

动态类型语言:在运行时才检查语句中对象的类型,例如 python,javaScript

函数:程序员可以使用函数把行为抽象成可调用的计算单元

typedef 的作用:

1、为了隐藏特定类型的实现,强调使用类型的目的;

2、简化复杂的类型定义,使其更易理解;

3、允许一种类型用于多个目的,同时使得每次使用该类型的目的明确;

使用预编译命令来对应多重包含

c++ 中每个变量都有作用域,每个对象都有生命期

变量提供了程序可以操作的存储区 (一块内存),c++ 中每一个变量都有特定的类型,该类型决定了变量的内存大小和布局、能够存储于该内存中的值的取值范围以及可应用在该变量上的操作集。一般称呼是“变量”和“对象”。

程序设计语言的一些共同特性:

内置数据类型,如整型、字符型等;

表达式和语句:表达式和语句用于操作上述类型的值;

变量:程序员可以使用变量对所用的对象命名;

控制结构:如 if 和 while,程序员可以使用控制结构有条件的执行或重复执行一组动作;

函数:程序员可以使用函数把行为抽象成可调用的计算单元;

大多数现代程序语言都采用两种方式扩充上述基本特征集:允许程序员通过自定义数据类型扩展该语言;提供标准类库,这些类库定义了一些并非内置在语言中的使用函数和数据类型。

变量是计算机里一块特定的内存,它由一个或多个连续的字节所组成。每个变量都有一个名称,可以用该名称表示内存的这个位置,以提取它包含的数据或存储一个新的数值。

int salaryl; // 变量声明 它声明了变量的名称

指针是可以存储地址的变量,存储在指针中的地址通常是另一个变量。指针变量包含一个地址。变量可以由包含其地址的指针来操作。一个指针变量必须指定它所指的变量类型,编译器会根据变量类型来处理它所指的内存的内容。

 

一个现代编译器的主要工作流程:源代码 (source code) → 预处理器 (preprocessor) → 编译器 (compiler) → 汇编程序 (assembler) → 目标代码 (object code) → 链接器 (Linker) → 可执行程序 (executables)

指针是一种特殊的变量,所存放的是内存的地址,通过指针变量可访问所指向内存空间中的内容。
数组是一组相关的内存位置,由连续的存储单元组成,他们都具有相同的名称和位置。
只有包含字符串结束符”/0”的数组才是字符串数组,字符数组则不能被函数当做字符串数组。
字符型数组可以存放字符串数组,字符串数组与一般的字符数组的区别是字符串数组包含字符串结束符”/0”,因此字符串一位数组的长度要比实际字符串的长度多1。
程序声明变量后,编译器就会为该变量分配相应的内存单元,即每个变量在内存会有固定的位置,有具体的地址和大小。

ANSI编码表示英文字符时用一个字节,表示中文用两个字节,而unicode不管表示英文字符还是中文都是用两个字节来表示。

分享到:
评论

相关推荐

    Java并发编程常识-梁飞.rar

    阿里大牛梁飞编写的《Java并发编程常识》PPT,深入浅出地讲解了这个主题,对开发者来说是一份宝贵的资源。 首先,我们来探讨Java并发编程的基础概念。并发是指多个执行单元(线程或进程)在同一时间间隔内同时进行...

    00-linux系统编程常识-王保明.pdf

    《00-linux系统编程常识》是由王保明编写的专题讲座,旨在帮助读者从项目开发的角度深入理解Linux系统编程的基础知识。该讲座涵盖了计算机系统组成、操作系统、以及Linux内核等核心主题,旨在构建一个完整的知识体系...

    如何学习数控编程

    学员需具备基本的学习能力,如理解力、逻辑思维能力,以及一定的预备知识,包括几何知识、机械制图基础、基础英语和机械加工常识。此外,掌握基本的三维造型技能也是必要的。同时,选择正规的培训机构和高质量的教材...

    linux编程常识,关于linux的一些常见问题

    ### Linux编程常识与常见问题详解 #### 一、为什么要学习Linux? Linux作为一种开源的操作系统,在全球范围内被广泛应用于服务器、嵌入式设备以及个人计算机等多个领域。随着互联网技术的发展,Linux的重要性日益...

    Java编程基础常识.pdf

    Java编程基础常识主要涵盖以下几个关键知识点: 1. **Java编程语言**:Java是一种强类型、面向对象的编程语言,由Sun Microsystems开发,并于1995年发布。它旨在提供强大的功能,易于学习且适用于跨平台开发。Java...

    03-linux系统编程常识-王保明.rar

    "03-linux系统编程常识-王保明"这个压缩包文件,很可能是王保明老师关于Linux系统编程的一份教程或者课程资料,其中包含了深入浅出的讲解和实践指导。下面我们将详细探讨Linux系统编程的一些核心知识点。 1. **系统...

    1-触电小常识-少儿编程scratch项目源代码文件案例素材.zip

    "1-触电小常识" 是一个专门为少儿设计的编程项目,旨在通过趣味性的编程学习,让孩子们了解和认识安全用电的基本知识。该项目采用的是Scratch编程语言,这是一种由麻省理工学院(MIT)开发的图形化编程工具,特别...

    Linux系统编程教程

    二、服务器开发:需要学习Linux 程序设计和Linux 网络编程。 三、嵌入式Linux 应用程序:需要学习C 语言和基本的Linux 常识。 四、嵌入式Linux 驱动:除了需要学习“嵌入式Linux 应用程序”的知识以外,还需要了 ...

    1--[触电小常识].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码

    1--[触电小常识].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码1--[触电小常识].zip源码scratch2.0 3.0编程项目源文件源码案例素材源代码1--[触电小常识].zip源码scratch2.0 3.0编程项目源文件源码案例...

    少儿编程实习报告.docx

    1. **基础概念的巩固**:实训初期,学员们重点复习了Java的基础知识,包括类型、变量、接口、输入/输出流、异常处理(分析异常和抛出异常)等概念,这些都是编程中的常识性内容,对后续的学习至关重要。 2. **小...

    vb编程常用命令集锦.docx

    学习 API 是 VB 编程中的一个非常重要的部分,开发者需要掌握一定的编程基础和经验,并具备一定的学习能力和实践经验。 知识点: 1. 什么是 API? API 是 Windows 操作系统提供的一系列复杂的函数、消息和结构,它...

    python编程基础篇.pdf

    10. 最后,由于这部分文档是外文翻译版,可能会存在一些翻译上的误差和理解上的偏差,这要求读者在学习的过程中,根据上下文语境和Python编程的常识,灵活理解和运用。 通过以上知识点的介绍,初学者可以搭建起坚实...

    java编程常识

    ### Java编程常识:数据类型详解 #### 一、引言 在Java编程中,了解基本的数据类型对于构建高效且可靠的程序至关重要。数据类型定义了变量能够存储的数据种类以及该种数据所占用的内存空间大小。Java支持多种数据...

    蓝桥杯编程猫Kitten模拟试题二模拟题附答案

    考虑到这是少儿编程的题目,题目内容可能与日常生活中的常识有关,例如食物等。 **第3题:**本题考查的是数学概念“舍入”。正确答案是C项“向下舍入”,这意味着在进行数值处理时,若遇到小数部分,则会直接去掉...

    人工智能时代中小学编程课程体系构建的实践探索.pdf

    潍坊市中小学编程课程的设置注重科学性、合理性,每学期3-8年级至少安排5课时的人工智能常识教育(含编程),高中阶段则按照信息技术课程要求开设相关课程,幼儿园、小学低年级和中职学校则根据各自的教育教学实际...

    数控加工编程与操作试题.pdf

    综上所述,数控加工编程与操作试题的准备,需要系统学习和掌握数控编程的基础理论、指令系统、编程方法、操作规范以及安全常识等,这些都是考生必须具备的知识点。通过系统的复习和实践操作的演练,考生能够对数控...

    大学生数控编程实习心得体会.doc

    4. 预备知识:学习数控编程要求学员掌握基本的机械制图、机械加工常识、机加工工艺和三维造型技能。 5. 教材选择:教材内容应与实际编程需求相符,结构合理,方便学员分阶段学习和记忆。 6. 学习策略:设定短期...

    51单片机编程音乐乐谱提取软件和音乐常识

    最后,"说明介绍.url"可能是一个链接,指向更详细的51单片机音乐编程教程或相关资源,帮助用户进一步学习和实践。 总的来说,51单片机编程音乐乐谱提取软件和音乐常识是一个综合性的主题,涵盖了数字信号处理(DSP...

Global site tag (gtag.js) - Google Analytics