自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

AnSwEr不是答案

http://answerywj.com/

  • 博客(118)
  • 资源 (1)
  • 收藏
  • 关注

原创 Python学习笔记(八)

迭代:在Python中,如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们成为迭代(Iteration)。注意: 集合是指包含一组元素的数据结构,我们已经介绍的包括:1. 有序集合:list,tuple,str和unicode;2. 无序集合:set3. 无序集合并且具有 key-value 对:dictra

2015-05-19 15:22:47 482

原创 Python学习笔记(七)

切片:Python提供了切片(Slice)操作符,取前3个元素,用一行代码就可以完成切片:>>> L[0:3]['Adam', 'Lisa', 'Bart']L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。如果第一个索引是0,还可以省略:>>> L[:3]['Adam', 'Lisa', 'Bart']

2015-05-18 11:50:35 397

原创 Python学习笔记(六)

函数:调用python内置的函数,可以通过 help(fun)进行查询。举例:abs(x):求x绝对值cmp(x,y):比较两个数大小,如果 xy,返回 1。int(x):把其他数据类型转换为整数,包括字符串类型。str():把其他类型转换成 str。编写函数:def my_abs(x): if x >= 0: return

2015-05-17 21:18:11 491

原创 Python学习笔记(五)

set:set 持有一系列元素,这一点和 list 很像,但是set的元素没有重复,而且是无序的,这点和 dict 的 key很像。创建:调用 set() 并传入一个 list,list的元素将作为set的元素:>>> s = set(['A', 'B', 'C'])set会自动去掉重复的元素。访问:由于set存储的是无序集合,所以我们没法通过索

2015-05-17 16:22:04 502

原创 Python学习笔记(四)

Dict:用 dict 表示“名字”-“成绩”的查找表如下:d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59}名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value。(key不能重复)花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: valu

2015-05-17 16:05:05 453

原创 Python学习笔记(三)

条件判断:if age >= 18: print 'adult'else: print 'teenager'具有相同缩进的代码被视为代码块。 if 语句后接表达式,然后用:表示代码块开始。elif 意思就是 else if:if age >= 18: print 'adult'elif age >= 6: print 'teena

2015-05-17 15:43:57 455

原创 Python学习笔记(二)

list:Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。L = ["Adam",95.5, "Lisa", 85, "Bart", 59]一个元素也没有的list,就是空list。通过索引可以获取list中的指定元素。使用索引时,千万注意不要越界。倒序索引:我们可以用 -1 这个索引来表示最后一个元素,类似的,倒

2015-05-17 15:28:41 475

原创 Python学习笔记(一)

一、整数整数的表示方法和数学上的写法一模一样,十六进制用前缀0x,八进制用前缀0。二、浮点数浮点数可以用数学写法,如2.56,3.14,-4.81,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x10^9就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。注:整数和浮点数在计算机内部存储的方式是不同的,整数运算

2015-05-17 14:55:46 595

原创 ubuntu下math.h头文件的编译问题

在ubuntu下写了个2次方函数,如下:/************************************************************************* > File Name: power.c > Author:AnSwEr > Mail:[email protected] > Created Time: 2015年04月16日 星期

2015-04-16 20:12:41 3888 3

原创 第十二章 存储类、链接和内存管理

1.作用域:程序中可以访问一个标识符的一个或多个区域。一个代码块是指在开始花括号和对应结束花括号之间的一段代码,可是C99规定语句若为循环语句或者if语句,即使没有花括号,也为一个代码块。2.函数原型作用域从变量定义到原型声明结尾。3.一个在所有函数之外定义的变量具有文件作用域。文件作用域变量也被称为全局变量。4.空链接:具有代码块作用域或函数原型作用域的变量。5.具有文件作用域的

2015-04-14 21:41:02 637

转载 VIM中Ctags插件的常用方法

『插件介绍』Ctags工具是用来遍历源代码文件生成tags文件,这些tags文件能被编辑器或其它工具用来快速查找定位源代码中的符号(tag/symbol),如变量名,函数名等。比如,tags文件就是Taglist和OmniCppComplete工作的基础。『下载和安装』一、我是使用apt-get安装的:sudo apt-get install ctags

2015-04-10 18:32:54 1058

原创 protobuf-c学习小结

由于项目的需要,利用了一下午进行了protobuf-c的学习,下面来总结一下。简介:protocolbuffer(以下简称PB)是google 的一种数据交换的格式,它独立于语言,独立于平台。google 提供了三种语言的实现:java、c++ 和 python,每一种实现都包含了相应语言的编译器以及库文件。由于它是一种二进制的格式,比使用 xml 进行数据交换快许多。可以把它用于分布

2015-04-10 12:20:29 4071 5

原创 讨论main函数执行结束后还能在执行一段代码吗?

今晚突然脑中出现了这个问题,于是通过查找一些资料来进行一下解答。要实现这个功能就需要使用atexit()函数,乍一看似乎是和exit()函数有关系,所以我们就先来复习一下exit()函数。exit():通常是用在子程序中用来终结程序用的,使用后程序自动结束,跳回操作系统。main函数结束时也会隐式地调用exit()函数。原型:void exit(int state);sta

2015-04-07 22:14:19 3146

原创 第十一章 字符串和字符串数组

1.字符串(character string)是以空字符(\o)结尾的char数组。2.字符串常量属于静态存储(static storage)类。静态存储是指如果在一个函数中使用字符串常量,即使多次调用,该字符串在整个运行过程中只存储一份。3.*“string”应该产生所指向的地址中的值。即字符串“string”中的第一个字符。4.指定数组大小时,一定要确保数组元素比字符串长度多1(放

2015-04-07 20:47:23 748 1

原创 第十章 数组和指针

1.求数组元素个数:sizeof (num)/num[0]。2.指定初始化项目(C99):int arr[6]={[5]=212};//未初始化的元素都被设置为0特性:a)如果在一个指定初始化项目后跟有不知一个值,则这些值用来对后续的数组元素初始化。b)如果多次对一个元素初始化,则最后一次有效。3.C不支持把数组作为一个整体进行赋值,也不支持用花括号括起来的列表形式进行赋值(初始化

2015-04-06 15:54:39 594

原创 itoa函数的使用与说明

原型:char *itoa( int value, char *string,int radix);value:欲转换的数据;string:目标字符串的地址;radix:转换后的进制数,可以是10进制、16进制等。功能:把一个整数转换成字符串。说明:itoa 并不是一个标准的C函数,它是Windows特有的,如果要写跨平台的程序,请用sprintf。标准库中有sprintf,功能比

2015-04-04 14:23:20 33068 1

原创 system函数的使用与说明

函数名:system()头文件:函数原型:int system(const char * string);功能:system()会调用fork()产生子进程,由子进程来调用/bin/sh-c string来执行参数string字符串所代表的命令,此命>令执行完后随即返回原调用的进程。在调用system()期间SIGCHLD 信号会被暂时搁置,SIGINT和SIGQUIT 信号则会被忽略

2015-04-04 14:18:51 4700

原创 getch函数的使用与说明

函数名:getch()原型:int getch(void);功能:在windows平台下从控制台无回显地取一个字符,在linux下是有回显的。在linux平台下时(即包含的是curses.h),还应该在使用函数之前使用initscr(),使用完毕之后调用endwin().否则的话不需输入就会返回。返回值:从键盘读取的字符。用法:常用作程序调试结束时,等待调试者按下任意键退出。

2015-04-04 14:13:15 4495

原创 atoi函数的说明与使用

atoi()函数:1.功能:把字符串转换成整型数。2.原型:int atoi(const char *nptr);说明: 参数nptr字符串,如果第一个非空格字符不存在或者不是数字也不是正负号则返回零,否则开始做类型转换,之后检测到非数字(包括结束符 \0) 字符时停止转换,返回整型数。3.头文件:4.实例:源码:#inc

2015-04-03 15:57:38 9953

原创 第三章 文件 I/O

1.不带缓冲:每个read和write都调用内核中的一个系统调用。2.不带缓冲的I/O函数不是ISO C的组成部分,但是,它们是POSIX.1和Single UNIX Specification的组成部分。3.文件描述符是一个非负整数。当打开一个现有文件或创建一个新文件时,内核向进程返回一个文件描述符。4.open函数:打开或创建一个文件。

2015-04-01 22:08:08 700

原创 第九章 函数

1.函数(function)是用于完成特定任务的程序代码的自包含单元。使用函数可以省去重复代码的编写,在需要的地方调用即可;使程序更加模块化,有利于程序的阅读,修改和完善。2.实际参数是函数调用时出现在圆括号中的表达式。而形式参量则是函数定义中在函数头部声明的变量。3.returne 语句会终止函数执行并把控制返回给调用函数。4.无参数:void printf_name(void);

2015-04-01 15:15:06 527

原创 第二章 UNIX标准化及实现

1.ANSI是美国国家标准学会(American National Standards Institute)2.国际化标准组织(International Organization for Standardization,ISO)3.IEC是国际电子技术委员会(International Electrotechnical Commission)4.POSIX是一系列由IEEE(Inst

2015-03-31 21:33:23 781

原创 第八章 字符输入/输出和输入确认

1.非缓冲输入:输入字符立即回显。2.缓冲输入:延迟回显。缓冲输入分为两类:完全缓冲(fully buffered)I/O和行缓冲(line-buffered)I/O。对完全缓冲来说,缓冲区填满时被清空(内容被发送至其目的地),这种类型的缓冲通常出现在文件输入中。缓冲区的大小取决于系统,但512和4096字节是常见的值。对行缓冲来说,遇到一个换行字符时被清空缓冲区。键盘输入是标准的行缓

2015-03-31 14:25:40 990

原创 unix环境高级编程源代码在ubuntu下运行

首先从 http://www.apuebook.com然后是解压缩到当前目录:tar -xzvf src.tar.gz然后进入目录apue.2e修改Make.defines.linux文件:vim Make.defines.linux里面有一行WKDIR=/home/sar/apue.2e 修改为WKDIR=/home/zq/下载/a

2015-03-30 21:00:33 1237

原创 第七章 C控制语句:分支和跳转

1.getchar()和putchar():专门为面向字符I/O而设计的一对C函数,仅仅能够处理字符,所以比scanf()和printf()更加简洁和快。这两个函数通常在stdio.h头文件中定义。(而且,它们通常只是预处理器宏(macro),而不是真正的函数)。2.while((ch=getchar()) != '\n')上面这行代码,体现了典型的C编程风格:将两个动作合并为一个表达式。

2015-03-30 13:33:17 651

原创 第一章 UNIX基础知识

1.操作系统控制计算机硬件资源,提供程序运行环境,可以定义为一种软件。我们称此种软件为内核(kernel),它相对较小,位于环境的中心。内核的接口被称为系统调用。2.用户的登录口令文件通常为/etc/passad。3.UNIX文件系统是目录和文件组成的一种层次结构,目录的起点称为根(root),其名字是一个字符/。目录(directory)是一个包含许多目录项的文件。4.目录中的各个名

2015-03-29 18:22:23 799

原创 第六章 C控制语句:循环

1.关系表达式可以用于字符的比较,比较时使用的是机器的字符代码(一般为ASCII)。不能使用关系运算符比较字符串。2.浮点数只能使用>和3._Bool类型:只具有值1(真)和0(假),C把任何非零的数值变量都认为是真。C99还提供了stdbool.h头文件,包含这个头文件可以使用bool代替_Bool,把true和false定义为1和0。4.关系运算符的优先级低于算术运算符,高于赋值运

2015-03-29 14:00:00 590

原创 第五章 运算符、表达式和语句

1.符号=左边的项目必须是一个变量的名字。实际上,赋值运算符左边必须指向一个存储位置。2.数据对象(data object):是泛指数据存储区的术语,数据存储区能用于保存值。3.操作数(operand):操作数是运算符操作的对象。4.C可以接受多重赋值。(a=b=c=4)5.一元运算符(unary operator):表示它只需要一个操作数。6..除法运算(/):浮点型

2015-03-28 13:16:38 616

原创 第四章 字符串和格式化输入\输出

1.空字符:'\0',C用来标记字符串的结束。空字符不是数字0。是非打印字符,ASCII码的值为0。该字符的存在意味着数组的单元数至少比要存储的字符数多1。2.空白字符:包括空格、制表符和换行符。C使用空白字符分隔各个语言符号;scanf()函数使用空白字符分隔相邻的输入项。3.strlen()函数:以字符为单位给出字符串的长度,在string.h中定义。4.sizeof()函

2015-03-27 14:32:09 1027

原创 第三章 数据和C

1.计算机中的存储方式:整数和浮点数类型;对于一些算术运算(如两个很大的数相减),使用浮点数会损失更多精度。2.1byte=8bits,一个8位的字节可表示0~255(2的8次方个)3.字(word),自然的存储单位,如64位PC,一个字就是64位。4.浮点数:3.16E7表示3.16乘以10的7次方。7称为10的指数。浮点数存储如下图:5.%0——八进制;%x——

2015-03-26 10:40:51 588

原创 第二章 C语言概述

变量名字的选择:可以使用小写字母、大写字母、数字和下划线。第一个字符必须是字母或者下划线。另外需要注意编译器可以识别的最大字符数。(如最多识别8个字符,Shakespeare和shakespencil被看作是一个名字)。语法错误:违背了如何把语句或程序放置在一起的规则。如:printf "weher are you?";语义错误:含义上的错误,如:thrice_n = n * 3;

2015-03-26 10:29:28 529

原创 第一章 概览

可移植性:在一个系统编写的C程序经过很少的改动或不经修改就可以在其他系统上运行。编写C程序的7个步骤:1.定义程序目标2.设计程序3.编写代码4.编译5.运行程序6.测试和调试程序7.维护和修改程序编译器和链接器:编译器将源代码转换为中间代码(机器语言代码),链接器再将中间代码与库代码、启动代码等结合起来生成可执行文件。

2015-03-26 10:27:40 567

转载 LINUX C编程中strtok()函数介绍

strtok的函数原型为char *strtok(char *s, char *delim),功能为“Parse S into tokens separated by characters in DELIM.If S is NULL, the saved pointer in SAVE_PTR is used as the next starting point. ” 翻译成汉语就是:作用于字符串

2015-03-23 23:37:31 1143 1

原创 C语言实现直角坐标转换为极坐标

需要利用数学库中的数学函数,废话不多说了,直接贴code:#include#include#define RAD_TO_DEG (180/(4*atan(1)))//pi=4*atan(1)typedef struct polar_y{double magnitude;//与极点的距离double angle;//角度}POLAR_V;typedef struct rect

2015-03-20 20:56:47 14795 6

原创 用户交互程序小技巧

当我们需要通过程序向用户获取一个字符命令时,我们可以这样做:scanf("%c",&ch);getchar();后一句的作用是吃掉上一句在IO遗留下来的回车,不然下一次再执行这个语句时,就会首先读取到回车符,而非是用户输入的字符。下面再来讨论以下scanf函数与几个其他IO函数的区别:读取字符时:scanf()以Space、Enter、Tab结束一次输入,

2015-03-17 21:07:56 740 1

原创 交互式程序的字符读取技巧

在交互式程序中,如果我们只需要读取一个字符,如输入abc,但是我们只需要a。要实现这种特性,需要以下动作:while(getchar() != '\n')continue;/*跳过输入行的剩余部分*/这个循环从输入读取字符,直到出现由回车键产生的换行字符。注意,函数返回值没有被赋值给ch,因此,字符仅被读取并丢弃。因为最后一个被丢弃的字符是换行符,所以下个读入的字符是下一行的首字符。如果

2015-03-16 12:37:51 1311 1

原创 位操作和字符转换的一些小问题

今天做到一道题目,大致是要求是编写一个将二进制字符串转化为数字值的函数。也就是说,如果您有以下语句: char * pbin = "01001001";那么您可以将pbin作为一个参数传送给该函数,使该函数返回一个int值25。其中有一段核心代码,一开始没怎么看懂,所以贴出来讨论一下。while(*pb != '\0') number=(number这里的移位操作相当于这个数乘以2

2015-03-15 17:51:13 807 1

原创 linux下C时间编程(1)——时间显示与转换

时间显示:  本文将着重阐述在linux下C开发中实际应用的时间编程的一些方法和技巧,对一些原理性的东西并不进行深入的讨论,如果读者有更深刻的理解,欢迎加入讨论。  在实际C开发中,我们常常需要输出或者让程序显示当前系统时间,例如生成日记文件、游戏开发等等。回想一下,在命令行中我们使用date来实现这一功能,然而在程序中如何实现呢?相信有一些C基础的读者第一时间会想到time()函数。下面

2014-12-14 14:54:22 4032 3

大作业代码

大作业代码

2013-06-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除