Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器 软件资源

软件开发小程序制作系统集成与运维空间租用硬件开发视频监控技术咨询与支持——联系电话:0311-88999002/88999003

首页 / 操作系统 / Linux

C语言复习之位段

C语言复习之位段

1.位段的声明和结构类似,但它的成员是一个或多个位的字段。这些不同长度的字段实际上存储于一个或多个整型变量中。2.位段的声明和任何普通的结构成员声明相同,但有两个例外。1>位段成员必须声明为int,singed int 或unsigned int类型。2>其次,在成员名的后面是一个冒号和一个整数,这个整数指定该位段所占用的位的数目。eg:struct CHAR { unsigned int ch : 7; unsigned int font :...
C语言复习之动态内存分配

C语言复习之动态内存分配

前言1.数组的元素存储于内存中连续的位置上。当一个数组被声明时,它所需要的内存在编译时就被分配。2.但是我们也可以使用动态内存分配在运行时为它分配内存。3.为什么使用动态内存分配1>当使用数组时,必须用一个常量来指定数组的长度。但是,有时候,数组的长度常常在运行时才知道。因此,在某些情况下,我们通常采取声明一个较大的数组,它可以容纳可能出现的最多元素。2>该方法的优点是:简单。3>它的缺点是:? 这种声明在程序中引入了人为的限制,如果程序...
C语言复习之字符串常量

C语言复习之字符串常量

1.当一个字符串常量出现于表达式中时,它的值是一个指针常量。编译器被这些指定字符的一份拷贝存储在内存的某个位置,并存储一个指向第一个字符的指针。(数组名用于表达式中时,它的值也是指针常量)2.”xyz”+1因为字符串常量实际上是个常量指针,这个表达式计算“指针值加上1”的数值。它的结果是个指针,指向字符串中的第2个字符:y。3.*”xyz”因为“xyz”是一个指针常量,指向字符串的第一个字符。因此对其间接操作,其值是字符x。4.”xyz”[2]则表示指向z...
C语言复习之预处理器

C语言复习之预处理器

一.前言1.编译一个C程序涉及很多步骤。其中第一步骤称为预处理(preprocessing)阶段。C预处理器(preprocessor)在源代码编译之前对其进行文本性质的操作。2.它的主要任务包括删除注释、插入被#include指令包含的内容、定义和替换由#define指令定义的符号以及确定代码的部分内容是否应该根据一些条件编译指令经行编译。二.预定义符号1.以下为预处理器定义的符号。它们的值或者是字符串常量,或者是十进制数字常量。2.__FILE__和_...
C语言:scanf家族和printf家族

C语言:scanf家族和printf家族

一.scanf家族1.scanf家族的原型如下。每个原型中的省略号表示一个可变长度的指针列表。从输入转换而来的值逐个存储到这些指针参数所指向的内存位置。int fscanf(FILE *stream,char const *format,…);int scanf(char const *format,…);int sscanf(char const *format,…);2.以上这些函数都从输入源读取字符并根据format字符串给出的格式代码对它们进行转换...
C函数中的二进制I/O

C函数中的二进制I/O

一.前言把数据写到文件效率最高的方法是用二进制形式写入。二进制输出避免了在数值转换为字符串过程中所涉及的开销和精度损失。但二进制数据并非人眼所能阅读。所以该方法只有当数据被另一个程序按顺序读取时才能使用。fread函数用于读取二进制数据,fwrite函数用于写入二进制数据。二.fread和fwrite1.fread()和fwirte函数原型1>size_t fread(void *buffer,size_t size,size_t count,FIL...
C语言中的输入输出函数

C语言中的输入输出函数

一.错误报告1.perror()函数是一种简单、统一的方式报告错误。ansi c 函数库的许多函数调用操作系统来完成某些任务,I/O函数尤其如此。任何时候,当操作系统根据要求执行一些任何的时候,都存在失败的可能。标准库函数在一个外部整型变量errno(在errno.h中定义)中保存错误代码之后把这个信息传递给用户程序,提示操作失败的准确原因。2.perror()函数的原型:#include<stdio.h>void perror(charcon...
C语言中的刷新和定位函数

C语言中的刷新和定位函数

一.fflush1.fflush的原型如下:int fflush(FILE *stream);2.当需要立即把输出缓冲区的数据进行物理写入时,应该使用这个函数。例如调用fflush函数保证调试信息实际打印出来,而不是保存在缓冲区中直到以后才打印。二.定位函数1.在正常情况下,数据以线性的方式写入,这意味着后面写入的数据在文件中的位置是在以前所有写入数据的后面。C同时支持随机访问I/O,也就是以任意顺序访问文件的不同位置。随机访问是通过在读取或写入前,先定位...
Eclipse中调试Nutch2.0

Eclipse中调试Nutch2.0

很早官方就开始了nutch2.0的研发,而一直都是两线同时研发的,一个是普通版,一个是gora版本,也就是nutch2.0。下面介绍下怎样把项目导进eclipse中,这里我们的存储层使用nosql cassandra,本来想先使用mysql试试,发现启动不了爬虫,调试下发现原来还没有完全实现gora的sql数据库的存储功能,所以选择易用的cassandra作为测试。需要知识:nutch基本知识,cassandra基本知识,用maven管理项目,用git管理...
Android开发之3D物理引擎

Android开发之3D物理引擎

Android下有很多优秀的3D物理引擎,如alien3d,gamine,jpct等,今天,我们介绍如何使用jpct(选这个引擎是因为它的官网上的Demo和ScreenShots很不错)1.在http://www.jpct.net/下载jpct,jpct全部都是用Java写的,有两个版本,一个是在桌面OS上运行的(如Windows,Linux等),另一个是在Android上运行的,我们把这两个都下载下来,我们都会用到。以下是官网的一些截图,很不错:2.我下...
iOS如何隐藏TabBar?

iOS如何隐藏TabBar?

系统自带的UITabBarController有时候到不到要求,需要自定义样式。有一种方法就是在TabBar上面在放一层自己的,正好把原来的遮住。那么,从Tab进入子的Controller想要隐藏TabBar怎么办呢?假如说你是用 TabBar + Navigation来做的,从第一个Tab——TabBar1进入子Controller(称作A),逻辑很简单,就是从TabBar1点击进入A, 你需要在TabBar1点击事件(A显示之前)加上self.hide...
iOS开发中nil与release

iOS开发中nil与release

nil和release的作用:nil就是把一个对象的指针置为空,只是切断了指针与内存中对象的联系;而release才是真正通知内存释放这个对象。所以nil并没有释放内存,只有release才回真正释放内存。二者使用的先后顺序:如果没有release就直接nil,那么虽然不会出错,却等于自己制造内存泄漏了,因为nil之后release就已经不起作用了。相反,如果在使用接口对象时只仅仅release没有设置self.myOutlet = nil,那么程序可能也...
Android中实现振动效果 (How to Imeplement Vibration Effect In Andoid)

Android中实现振动效果 (How to Imeplement Vibration Effect In Andoid)

Android实现振动效果,需要调用Android系统提供的Vibrator,Vibrator主要的API有:? vibrate(long milliseconds)振动指定的时间。? vibrate(long[] pattern, int repeat)按照给定的模式振动。Patterns指定振动模式,数组的每个整数是一个时间间隔,第一个整数指定等待多长时间开始振动,后面的参数依次重复指定振动持续的时间和振动间隔的时间。Repeat指定patter数组中...
<< 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 >>