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

首页 / 操作系统 / Linux

iOS打印Debug日志的方式

iOS打印Debug日志的方式

简单介绍以下几个宏:1) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持)。宏前面加上##的作用在于,当可变参数的个数为0时,这里的##起到把前面多余的","去掉,否则会编译出错。2) __FILE__ 宏在预编译时会替换成当前的源文件名3) __LINE__宏在预编译时会替换成当前的行号4) __FUNCTION__宏在预编译时会替换成当前的函数名称1.重新定义系统的...
10个非常有用的PHP函数

10个非常有用的PHP函数

函数是PHP如此强大的源泉,但是很多PHP函数并没有得到充分的利用。这里,我们给大家简单介绍10个不常见,但非常有用的函数。1、sys_getloadavg()sys_getloadavt()可以获得系统负载情况。该函数返回一个包含三个元素的数组,每个元素分别代表系统再过去的1、5和15分钟内的平均负载。与其让服务器因负 载过高而宕掉,不如在系统负载很高时主动die掉一个脚本,sys_getloadavg()就是用来帮你实现这个功能的。 不过很遗憾,该函数...
bash shell获取进程的pid

bash shell获取进程的pid

在写一个脚本时在获取进程的pid时出现了一点点意外,当时的情境大概是这样的:跑一个任务A,然后任务B要监控A的状态,一旦A结束,B也要结束。当初第一反应就是获取B的pid然后判断A是否在运行,如果没有则kill掉B。可是当初就是不成功(用的是 $!),于是迫于任务紧急换了一种笨方法:让B的运行时间稍长于A任务(A任务的时间可以估算出来),于是就这样傻缺的开始了这个任务。今天再一次有同样的需求,于是下定决心要弄明白上次为什么失败。后来终于发现了原因:当我们获...
I2C全面理解

I2C全面理解

I2C我是想全面深入的从嵌入式软件工程师的角度做个理解,刚刚还申请了一个专栏,这个好好写.学习技术从外文文档看起~~要全面了解I2C,可以从《I2C-bus specification and user manual》看起.I2C最初是由Philips提出的,那么这文档就是由NXP维护的.I2C总线被全球超过50个公司的1000+个ICs所使用,已然是一个世界标准.另外,I2C总线与多种不同的控制总线是兼容的,比如SMBus(系统管理总线),PMBus(电...
Android Launcher开发之桌面小部件AppWidget详解

Android Launcher开发之桌面小部件AppWidget详解

导读:先简单说说Widget的原理。Widget是在桌面上的一块显示信息的东西,也通过单击Widget跳转到一个程序里面。而系统自带的程序,典型的Widget是music,这个Android内置的音乐播放小程序。先简单说说Widget的原理。Widget是在桌面上的一块显示信息的东西,也通过单击Widget跳转到一个程序里面。而系统自带的程序,典型的Widget是music,这个Android内置的音乐播放小程序。这个是典型的Widget+app应用。就是...
Android Launcher开发之LiveFolder(实时文件夹) 完全解析

Android Launcher开发之LiveFolder(实时文件夹) 完全解析

实时文件夹概述:实时文件夹是在SDK1.5中引入的,支持开发人员在设备的默认打开屏幕(我们将其称为设备的主页)上公开 ContentProvider,如联系人信息、笔记和媒体。将ContentProvider(比如Android的 contactsContentProvider)在主页上公开为活动文件夹之后,在联系人数据库中添加、删除或修改联系人时,此实时文件夹能够刷新自身所包含的内容。Android中的实时文件夹对ContentProvider的作用就相...
Android程序编译后无法生成R.java文件

Android程序编译后无法生成R.java文件

删除gen目录下的R.java文件后,重新编译程序后无法生成R。java。查看res目录下没有任何xml文件编写错误的提示。执行Project—Clean也无法解决此问题。在抓狂到想要砸电脑的时候,突然发现Console窗口下已经给出了出错原因,只不过没有注意到。Console下打印错误信息:[2012-08-0818:26:54-ChangHong_HuiYuanBao]reslayoutCopyofshuaka.xml:Invalidfilename:...
Objective-C语法之代码块的使用

Objective-C语法之代码块的使用

Objective-C代码块本质上是和其他变量类似。不同的是,代码块存储的数据是一个函数体。使用代码块是,你可以像调用其他标准函数一样,传入参数数,并得到返回值。脱字符(^)是块的语法标记。按照我们熟悉的参数语法规约所定义的返回值以及块的主体(也就是可以执行的代码)。下图是如何把块变量赋值给一个变量的语法讲解:按照调用函数的方式调用块对象变量就可以了:int result = myBlock(4); // result是 281、参数是NSString*的...
<< 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 >>