内部类使用及注意事项

什么叫内部类呢? 简单来说将一个类定义到另一个类里面,里面那个类就称为是内部类 内部类的访问特点: 内部类可以直接访问外部类中的成员,包括私有成员。外部类要访问内部类中的成员必须要建立内部类的对象才能访问。 内部类的用处: 内部类一般用于类的设计。分析事物时,发现该事物描述中还有事物,而且这个事物还在访问被描述事物的内容。这个时候,这个事物中的事物就定义成内部类来描述。 内部类的修饰符:
分类: 其他 发布时间: 08-10 23:41 阅读次数: 0

java中异常的使用及注意事项

异常:在运行时发生的不正常情况public class ExceptionDemo{ public static void main(String[]args){ int []arr = new int[3]; System.out.println(arr[3]); } }异常处理办法: 早期时:以前正常流程代码和问题处理代码相结合, 劣势:问题处
分类: 其他 发布时间: 08-10 23:41 阅读次数: 0

java中占位符替换

写码过程中,避免不了会遇到字符串替换的问题,String提供了replace,replaceAll,replaceFirst方法,也是我们大部分人都熟悉的方法。今天要说的是java提供的MessageFormat类提供的format方法。 可以这样用: import java.text.MessageFormat; public class MainClass { public s...
分类: 其他 发布时间: 08-10 23:41 阅读次数: 0

考一考!嵌入式C面试题3道

题一: 关键字volatile在编译时有什么含义?并给出三个不同使用场景的例子(可以伪代码或者文字描述)。 思考过后,再到下方寻找答案   题二: C语言中static关键字的具体作用有哪些 ? 思考过后,再到下方寻找答案   题三: 请问下面三种变量声明有何区别?请给出具体含义 int const *p; int* const p; int const* const p; 思...
分类: 其他 发布时间: 08-10 23:40 阅读次数: 0

BusyBox 支持的命令

/ # busybox  BusyBox v1.22.1 (2015-05-08 13:56:24 CST) multi-call binary. BusyBox is copyrighted by many authors between 1998-2012. Licensed under GPLv2. See source distribution for detailed copyright...
分类: 其他 发布时间: 08-10 23:40 阅读次数: 0

include\linux cdev.h

#ifndef _LINUX_CDEV_H #define _LINUX_CDEV_H #include <linux/kobject.h> #include <linux/kdev_t.h> #include <linux/list.h> struct file_operations; struct inode; struct module; stru...
分类: 其他 发布时间: 08-10 23:40 阅读次数: 0

linux/fs/char_dev.c

/* * linux/fs/char_dev.c * * Copyright (C) 1991, 1992 Linus Torvalds */ #include <linux/init.h> #include <linux/fs.h> #include <linux/kdev_t.h> #include <linux/slab.h>...
分类: 其他 发布时间: 08-10 23:39 阅读次数: 0

include/linux/fs.h struct file_operations

struct file_operations { struct module *owner; loff_t (*llseek) (struct file *, loff_t, int); ssize_t (*read) (struct file *, char __user *, size_t, loff_t *); ssize_t (*write) (struct file *, co...
分类: 其他 发布时间: 08-10 23:39 阅读次数: 0

drivers/char/atmel_sama5_gpio.c

/* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #incl...
分类: 其他 发布时间: 08-10 23:39 阅读次数: 0

/sys/bus/platform/drivers

/sys/bus/platform/drivers # ls -l total 0 drwxr-xr-x    2 root     root             0 Aug  5 15:20 alarmtimer drwxr-xr-x    2 root     root             0 Aug  5 15:20 at91_adc drwxr-xr-x    2 root    ...
分类: 其他 发布时间: 08-10 23:39 阅读次数: 0

【转】15 内核里leds-gpio设备驱动的设备树方法

在linux内核里已提供了连接到gpio的led设备驱动,只需要通过platform_device或设备提供相应的硬件资源即可.  使用platform_device方法可参考: http://blog.csdn.net/jklinux/article/details/73850470 内核里的leds-gpio设备驱动配置选项: make menuconfig ARCH=arm64 CRO...
分类: 其他 发布时间: 08-10 23:38 阅读次数: 0

【Interview###】华为、中兴嵌入式(C)笔试题

【程序员面试宝典】   1 读程序段,回答问题(a)  int main(int argc,char *argv[]) { int c=9,d=0; c=c++%5; d=c; printf("d=%d\n",d); return 0; } a) 写出程序输出 b) 在一个可移植的系统中这种表达式是否存在风险?why? 答案:5 存在风险,因为c=c++%5;这个表达式对c有两次修改,行为...
分类: 其他 发布时间: 08-10 23:38 阅读次数: 0

为何printf()经常有重入和性能上的问题

转载: 这个概念在嵌入式操作系统中比较重要,由于存在任务的调度,它实时系统,可剥夺型内核中是危险的,如同一个安静的水雷。可能会被触发,也可能安然无恙。由于它运行结果的不可预期性,会使系统带来隐患。 printf()经常有重入解释 不可重入函数不可以在它还没有返回就再次被调用。例如printf,malloc,free等都是不可重入函数。因为中断可能在任何时候发生,例如在printf执行过程中,...
分类: 其他 发布时间: 08-10 23:38 阅读次数: 0

C语言的未定义行为(undefined behaviour)

什么是未定义行为 简单地说,未定义行为是指C语言标准未做规定的行为。编译器可能不会报错,但是这些行为编译器会自行处理,所以不同的编译器会出现不同的结果,什么都有可能发生,这是一个极大的隐患,所以我们应该尽量避免这种情况的发生。 特征 包含多个不确定的副作用的代码的行为总是被认为未定义。(简单而言, “多  个不确定副作用” 是指在同一个表达式中使用导致同一对象修改两次或修改以后  又被引用的...
分类: 其他 发布时间: 08-10 23:38 阅读次数: 0

软件研发和嵌入式软件研发面试经历

今年的就业形式不太好,在过去的两个月,一直处于奔波的状态。今天总算把自己签了出去。首先,要感谢家人、朋友和老师的鼓励和帮助。对自己的面试经历理了理,过去两个月,居然面了多达14家公司。不做统计,不知道有多么悲催,呵呵。这篇文章,是对自己面试的一个总结,主要包含面试中问的问题,以及自己失误的地方。 第1家,是PPS-上海众源网络,嵌入式开发工程师 笔试过后,获得了面试机会,PPS总共2面。第一面...
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0

数据结构(三)串---KMP模式匹配算法实现及优化

KMP算法实现 #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <stdlib.h> #include <string.h> #define OK 1 #define ERROR 0 #define TRUE 1 #define FALSE 0 #define MAXSIZE 40 typedef int ElemType; typedef int Status; //设置串的存储结构 typedef char S
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0

51Nod1306 高楼和棋子 动态规划

原文链接https://www.cnblogs.com/zhouzhendong/p/51Nod1306.html 题目传送门 - 51Nod1306 题意   有个N层的高楼和若干个棋子,所有的棋子都是一样的。棋子从楼的某层E扔到地上不会碎(0 <= E <= N),但从比这个楼层高的地方扔到地上都会碎。给出楼的高度N,以及棋子的数量M,你来找出这个E(0 <= E <= N),问最坏情况下需要实验多少次才能计算出准确的E(如果棋子摔碎了,就不能继续用这个棋子进行测试了)。   1 <= N
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0

2-SAT问题的解决方案

先象征性地描述一下问题:一组(或者一个)东西有且仅有两种选择,要么选这个,要么选那个,还有一堆的约束条件 图论问题,当然是建边跑图喽 给出模型: 模型一:两者(A,B)不能同时取   那么选择了A就只能选择B’,选择了B就只能选择A’   连边A→B’,B→A’ 模型二:两者(A,B)不能同时不取   那么选择了A’就只能选择B,选择了B’就只能选择A   连边A’→B,B’→A 模型三:两者(A,B)要么都取,要么都不取   那么选择了A,就只能选择B,选择了B就只能选择A,选择了
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0

Python基础09 面向对象的进一步拓展

我们熟悉了对象和类的基本概念。我们将进一步拓展,以便能实际运用对象和类。 调用类的其它信息 上一讲中提到,在定义方法时,必须有self这一参数。这个参数表示某个对象。对象拥有类的所有性质,那么我们可以通过self,调用类属性。 class Human(object): laugh = 'hahahaha' def show_laugh(self): print self.laugh def laugh_100th(self): for i
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0

python深浅拷贝,集合以及数据类型的补充

1.基础数据类型的补充 1.元组 如果元组中只有一个数据,且没有逗号,则该‘元组’与里面的数据的类型相同。如: 1 tu = (1) 2 tu1 = (1,) 3 tu2 = ('alex') 4 tu3 = ([1,2,3],) 5 print(tu,type(tu)) # 1 <class 'int'> 6 print(tu1,type(tu1)) # (1,) <class 'tuple'> 7 print(tu2,type(tu2)) # alex <class 'str'>
分类: 其他 发布时间: 08-10 23:36 阅读次数: 0