C — malloc( ) and free( )

  • C 语言中使用malloc( )函数申请的内存空间,为什么一定要使用free释放?

**malloc()函数功能:是从堆区申请一段连续的空间,函数结束后不会自动释放,如果不调用free()去释放的话,要等到程序结束后,操作系统才会自动回收。

    1. malloc后的内存除了等到free来释放,还可以等到程序运行结束时自动释放。
    2. 程序运行过程中,如果一直malloc内存而不释放会导致这部分内存不能被再次使用,即内存泄露。这样以来,应用程序会逐渐用光所有可用的内存,最终导致应用程序因内存不足而崩溃停止。
    3. 所以一个好的习惯是,malloc后一定要记得free之。
  • 用malloc函数申请0字节内存会返回NULL指针吗?

申请0字节内存,函数并不返回NULL,而是返回一个正常的内存地址。但是你却无法使用这块大小为0的内存。

  • free函数:斩断指针变量与这块内存的关系。

C — 整型数与浮点型数进行操作,为什么整型数会自动转换为浮点型?

不同的数据类型在进行混合运算时,会发生数据类型的自动转换,在由编译系统自动完成

若参与运算的数据类型不同,则先转换为同一类型,然后进行运算;转换按数据长度增加的方向进行,以保证精度不降低

.pyc文件?

  • 什么是pyc文件?

python提供了内置的类库( py_compile 模块)来实现把py文件编译为pyc文件。pyc是一种二进制文件,是由py文件经过编译后生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,这个是类似于JAVA或者.NET的虚拟机的概念。pyc的内容是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件在2.4版本的python上是无法执行的。

  • 为什么需要pyc文件?

加密。因为py文件是可以直接看到源码的,若是开发商业软件的话,不可能把源码泄漏出去。所以就需要编译为pyc后,再发布出去。根据python源码中提供的opcode,可以根据pyc文件反编译出py文件源码。也可以自己修改python的源代码中的opcode文件,重新编译python,从而防止不法分子的破解。

  • pyc文件一般由3个部分组成:
    1. 最开始4个字节是一个Maigc int,标识此pyc的版本信息,不同的版本的 Magic 都在 Python/import.c 内定义
    2. 接下来四个字节还是个int,是pyc产生的时间(1970.01.01到产生pyc时候的秒数)
    3. 接下来是个序列化了的 PyCodeObject(此结构在 Include/code.h 内定义),序列化方法在 Python/marshal.c 内定义

Python中安装第三方包的方法?

  1. 使用pip:大多数库都可以通过pip安装,安装方法为,在命令行窗口输入pip install libname(libname为库名)。或可以下载安装包之后离线安装,方法是pip install libpath(libpath为本地安装包地址),这些安装包一般以whl为后缀名。表示python扩展包的windows环境下的二进制文件。
  2. 源文件安装:如果下载下来的安装包为带有源文件的压缩包,解压之后,运行setup.py进行安装,方法是命令行切换到安装包中setup.py文件所在的目录,执行 python setup.py install
  3. 运行安装包:有些类库提供了双击运行直接安装的安装包,比这些安装包的后缀名为msi或者exe。下载下来后,双击运行之后就安装好了,前提是要根据python的版本及windows的位数下载对应的安装包,否则安装过程会报错或者直接提示无法安装。

验证一个网站的所有链接的有效性,怎么验证?

个人想法,求大家指正:获取页面上所有元素属性包含"href"的元素,可以用getAttribute(“href”)方法,然后做个循环依次点击验证会不会报404错误等。(补充:链接测试必须在集成测试阶段完成,也就是,在整个Web应用系统的所有页面开发完成之后进行链接测试)

针对全新的任务,怎样着手?

个人想法,求大家指正:

  1. 从整体全局的角度了解整个任务的流程、步骤;
  2. 了解实现任务的各种方法,从中找出最有解;
  3. 逐步配置环境,并验证没有问题;
  4. ……

note:个人总结分享,欢迎指正,分享

笔记——malloc、free、不同数据类型操作、.pyc文件、python安装第三方包、验证一个网站的所有链接有效性的更多相关文章

  1. Python安装第三方库文件工具——pip

    Python安装第三方库文件一般使用pip. 1.pip的安装 (1)下载pip 进入https://pypi.python.org/pypi/pip#downloads

  2. 历史文章分类汇总-Anaconda安装第三方包(whl文件)

    本文主要是对公众号之前发布的文章进行分类整理,方面大家查阅,以后会不定期对文章汇总进行更新与发布.   一.推荐阅读: Anaconda安装第三方包(whl文件) 福布斯系列之数据分析思路篇 福布斯系 ...

  3. Java学习笔记(二)——Java操作properties文件

    [前面的话] 前段时间在学习和玩java web相关的东西,对于这些技术,一边学习,一边做东西,一边总结,希望可以一边成长和有所收获.有时总是思考太多反而成为了前进的阻力,所以对于生活还是简单一些,不 ...

  4. Python基础-1 python由来 Python安装入门 注释 pyc文件 python变量 获取用户输入 流程控制if while

    1.Python由来 Python前世今生 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚 ...

  5. python笔记二:常用数据类型操作

    1.切片:常用于取list或tuple的部分元素的操作 1)l=[1,2,3,4,5,6] l[:3]表示取前3个值,l[1:5]表示1到5个值, L[-3:]从列表最后往前数即最后3个数.... 2 ...

  6. C++笔记001:Microsoft Visual Studio 2010软件的安装与建立第一个cpp文件

    原创笔记,转载请注明出处! 点击[关注],关注也是一种美德~ 我学习C++使用软件为Microsoft Visual Studio 2010. 首先,软件的安装包 链接:https://pan.bai ...

  7. 如何用Apache POI操作Excel文件-----如何用Apache POI 画一个离散图

    有的时候,我们需要Excel中的数据,通过一个图画,可视化的表现出来. 那么这个时候,应该如何做呢?现在就借花献佛,以Apache POI自己提供的一个例子为例,给大家演示一下POI的API 如何画图 ...

  8. Anaconda安装第三方包(whl文件)

    先说下环境 Anaconda 对应Python3.5的版本 win7,64位系统. step1:下载whl文件 step2:打开‘Anaconda Command Prompt‘, 如下图: step ...

  9. python py生成为pyc文件

    生成单个pyc文件 python就是个好东西,它提供了内置的类库来实现把py文件编译为pyc文件,这个模块就是 py_compile 模块. 使用方法非常简单,如下所示,直接在idle中,就可以把一个 ...

随机推荐

  1. 七天从零基础学习android(1)--配置环境

    在写这篇文的时候android开发经验还是0,是一个萌新,这是一篇记录一个萌新从零android编程基础到能编写一个记账本的开发过程(至少我是这样美好的希望着的) 首先因为是没有开发基础的,直接上百度 ...

  2. asterisk 问题

    Q:SIP可以呼通,但听不到声音A:一般是NAT问题造成.如果Asterisk处在NAT的后面,则Asterisk的配置如下: ------------------------------------ ...

  3. Java读取文件时中文路径处理

    读取文件路径时可能存在以下情况: 1.空格,如果出现空格会转变成“%20” 2.中文路径,如果出现中文路径会变成URI编码“%e5%bc%80%e5%8f%91%e5%b7%a5%e7%a8%8b” ...

  4. 我在使用eclipse配置Tomcat服务器的时候发现,默认情况下Tocmat把我们部署的项目放在了workspaces下面,而不是像Myeclipse默认的那样放在tomcat的安装路径下。

    1.我在使用eclipse配置Tomcat服务器的时候发现,默认情况下Tocmat把我们部署的项目放在了workspaces下面,而不是像Myeclipse默认的那样放在tomcat的安装路径下. 2 ...

  5. Java根据百度API获得经纬度,然后根据经纬度在获得城市信息

    原文:http://www.open-open.com/code/view/1421032487812 import java.io.BufferedReader; import java.io.IO ...

  6. 去掉小程序textarea上的完成按钮栏

    小程序textarea上会自动多一个完成按钮,如下图所示,如果是mpVue,在textarea添加     :show-confirm-bar="false"     即可.  

  7. 运行计划中cost计算方法

    概念: blevel:二元高度=索引高度-1 clustering_factor:集群因子,通过索引扫面得出的要查询table的blocks数量,clustering_factor接近table的bl ...

  8. MongoDB 自己定义函数

    定义 db.system.js.insert({ _id : "TestConcat", value : function TestConcat(s1, s2){ return s ...

  9. asp.net项目与开源单点登录项目CAS的结合

    这段时间搞的一个asp.net mvc项目,采用了单点登录. 这个单点登录就是CAS,一个开源的JAVA项目.当然,这并不影响ASP.NET项目结合它来进行登录.因为各自分工不同:单点登录(管它是不是 ...

  10. Hibernate 之 一级缓存

    本篇文章主要是总结Hibernate中关于缓存的相关内容. 先来看看什么是缓存,我们这里所说的缓存主要是指应用程序与物流数据源之间(例如硬盘),用于存放临时数据的内存区域,这样做的目的是为了减少应用程 ...