分类 随笔 下的文章

程序员的危机感


不努力的人将被淘汰

起步

经常浏览互联网的人应该知道有个东西叫Flash

20160817114413.png

也就七八年前,它是最热门的一门技术了,网页游戏,动画,视频,播放器,基本都有用到它。后来乔布斯宣布苹果手机不支持Flash,因为影响手机性能。这项举动给了这项技术致命一击,在新的技术出现,能更好完成工作。连Adobe自己也宣布放弃Flash这个名字,软件将重新定位,只用来制作动画。

当一种技术消亡的时候,与它相关的工作岗位也就消亡了。这种事情在技术行业特别多,因为技术的升级换代太快了。


开发编程语言(五):词法分析


起步

我的开发阶段比写博客的速度要快一些,终于也有了可以运行的版本了. github:https://github.com/OriginUnion/origin

词法分析

词法分析其实就是把源代码分割为若干个记号(Token),给一个单词或者数字标记,给保留字添加标签,数字归数字的一类,变量归变量,运算符归运算符.

执行词法分析器的程序也称为词法分析器.在这个开发过程中我用了flex/lex工具来完成.关于它的用法兄台可以自己查找.


深入解析float


0.前言

float属性在css2中是一个热门的属性,被广泛应用于布局之中,同时由于不当使用float带来的问题也非常多,本文结合自己对float的理解以及实际项目中碰到float的相关问题,做一个详细总结,欢迎一起探讨,但未经同意禁止转载。以下是文章的目录

  1. float的特性
  2. float与absolute的区别
  3. float与inline-block
  4. 清除浮动的方法及优缺点

1.float的特性

文字环绕

float 最早的设计目的是用于图片,使文字能够环绕在图片周围,像下面这样:

1.png


开发编程语言(四):变量


开头

变量的标识符与函数名规则一样,采用[A-Za-z_][A-Za-z_0-9]*识别.作为弱类型语言并不代表没有数据类型,而是其数据类型在运行时确定,不像编译型语言在编译阶段就确定.我们仍然需要对数据类型进行定义:

//变量类型
typedef enum {
    ORG_BOOLEAN_VALUE = 1, //布尔类型
    ORG_INT_VALUE,          //整型
    ORG_DOUBLE_VALUE,       //浮点型
    ORG_STRING_VALUE,       //字符串型
    ORG_NATIVE_POINTER_VALUE, //复杂数据类型
    ORG_NULL_VALUE,         //空值,未设置类型
} ORG_ValueType;

ORG_NATIVE_POINTER_VALUE可以说这个是指针类型,我更愿意说其是复杂的数据类型,在这里我将字符串型作为基本数据类型,是因为这个太常用了,并且移除了单字符和多字符的区别.


解决Linux CLion不能输入中文的问题


起步

IntelliJ CLion 是一款C/C++所设计的跨平台IDE,最喜欢就是它可以自动补全和代码跳转。对于#define都能很好识别,CMake 配合也足够简单好用。但是中文却不能输入。

环境

  • Ubuntu:16.04
  • 搜狗输入法
  • CLion 2016.1.3

解决方案

搜狗中文输入在Linux下其他程序中均可正常使用,Linux下的CLion无法使用中文输入法。 这与CLion的程序应用环境有关系。在clion.sh配置文件中尾部加入下面3个选项:

export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx