Shawn's Blog

一个伪程序员的伪技术博客

0X00抽象类&接口简介

抽象类

  1. abstract 抽象修饰符——抽象就是为了让子类集成的,并不能直接实现一个对象
  2. 抽象类中所有抽象方法都要在子类中实现
  3. 拥有抽象方法的类必须声明为抽象类
  4. 抽象类可以有非抽象的方法

接口

  1. interface 接口修饰符——接口是为了让类实现的
  2. 变量默认是public static final并且不能改变
  3. 方法默认是public abstract并且不能改变
  4. 接口不实现方法
阅读全文 »

0X00 编译环境

Ubuntu 14.04 + GNU/gcc
如果要在Windows下编译的话,* 可能 * 需要注释掉16-18的编译预处理,还 * 可能 * 要注释掉getch()的函数声明及定义,最后在加上conio.h的头文件。

0X01 遇到的问题

Windows中能使用getch()函数,这个函数是以输入流的方式输入。(简单地说就是按下去一个按键就能有反应,而不用点击回车)。但是在Linux环境下没有这个函数也没有connio.h的头文件。但是每次按一下还要按回车还是挺逆天的。不过我在网上找到了替代品(感谢幽鬼

http://my.oschina.net/yougui/blog/111345

阅读全文 »

实现简单日历

读取当前时间并显示本月日历
输出格式化

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#!/usr/bin/python2

#It's my first Python program

import time

#get date 获取当前日期
year = time.strftime('%Y', time.localtime(time.time()))
year = (int)(year)
month = time.strftime('%m', time.localtime(time.time()))
day = time.strftime('%d', time.localtime(time.time()))
day = (int)(day)
week = time.strftime('%w', time.localtime(time.time()))

week = (int)(week)
for i in range(0, day - 1):
week = week - 1
if week == -1:
week = 6

#judge leap 判断是否是闰年
if year % 4 == 0 and year % 400 != 0 or year % 400 == 0 :
isLeap = True
else :
isLeap = False

#all Day这个月一共有多少天
if month == '01' or month == '03' or month == '05' or month == '07' or month == '08' or month == '10' or month == '12' :
allDay = 31
elif month == '02' and isLeap :
allDay = 29
elif month == '02' and not isLeap :
allDay = 28
else :
allDay = 30

#print CAL 输出这个月的日历
print ' ' + str(year) + ' ' + str(month)
print ''
print 'Sun Mon Tue Wed Thu Fri Sat'

for i in range(week) : #print space 输出空白部分
print ' ',

for i in range(1, allDay + 1) : #print everday 输出日期
x = str(i)
print '%-4s' % x,
week = week + 1
if week == 7 :
week = 0
print

raw_input()

0X00 Linux文件目录结构

  我们在Windows环境下的文件目录结构大概是几个盘符,C盘D盘E盘…但是在Linux下是树状图(其实Windows内部也是树状图)。Linux下一个主要目录是/根目录,其他所有目录都在根目录下,其他的磁盘或者分区也都挂载在根目录下。

  挂载:比如我的/media/shawn/new_disk是一个空的目录,那我就可以把一个分区挂载到这个目录下,就相当于你挂了一个瓶子在某个树杈上,这样你在瓶子(分区)装的文件就只占用你的瓶子(分区)空间,并不会占据树上的空间。

阅读全文 »

  最近在网上看到有的说法里是没有bool类型的,不过以前在书上好像看到过相关的介绍,就特意找出来了那本书《C Primer Plus》,确定了C语言里确实存在bool类型。C语言是在C99标准中添加的bool类型。

bool类型是以英国数学家 * George Boole * 命名的,是他开发了用线性代数表示并解决逻辑问题的系统。

  在C语言中我们使用 _Bool 来定义bool类型的变量

  下面定义了一个_Bool类型的变量,并把(1 == 3)的计算值赋值给test

阅读全文 »
0%