Hot For Coding
C释放内存的一点技巧

C语言语法虽然简单,但没有GC,内存需要手动控制。这就造成一个结果,程序员素质不高,软件就会被写的特别烂,程序员要牛逼,软件的表现力会比有GC的效果要好。

在C语言里要申请内存需要使用malloc()函数,反之释放内存使用free()函数,但是如果要释放时,请不要简单的仅仅使用free,如以下例子

#include <stdlib.h>
int main ()
{
  int * buffer;
  buffer = (int*) malloc (100 * sizeof(int));

  free(buffer);

  // 此时,虽然free了,但buffer还是指向原来的内存地址
  // 如果你不留意,后边使用了buffer做操作,那么程序很大几率会崩溃

  return 0;
}

...

READ ALL

Java枚举值转字符串数组

在Java中定义了一个类似这样的枚举值

public enum Arrow {
  LEFT,
  TOP,
  BOTTOM,
  RIGHT;
}

如果想要把Arrow转换成字符串数组,可以遍历这个枚举并使用name方法获取枚举值转字符串的方式

public static String[] names() {
  Arrow[] arrows = values();
  String[] names = new String[arrows.length];

  for (int i = 0; i < arrows.length; i++) {
    names[i] = arrows[i].name();
  }

  return names;
}

...

READ ALL

JavaScript私有变量

如果接触过其它语言的,应该会接触过私有变量这一个概念。所谓私有就是没有受保护,不能修改与访问,只能通过对外接口访问与修改。但是在JavaScript中并没有私有变量这个概念,所有成员都可以通过下标访问与修改,如:

var F = function () {};
 
F.prototype.name = 'zhangsan';
 
var a = new F();
 
console.log(a.name); // zhangsan
 
a.name = 'lisi';

console.log(a.name); // lisi

...

READ ALL

DOM API querySelector与querySelectorAll的用法

HTML5引入了与jQuery选择器相似的DOM API querySelectorAll(), 这个API用起来比那个getElement**好多了!废话不多说,直接上实例。

index.html

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
  </head>
  <body>
    <div class="box"></div>

    <div class="box">
      <p id="lost"></p>
      <p name="qttc"></p>
    </div>        

    <div></div>

    <div></div>

    <div class="box"></div>
  </body>
</html>

...

READ ALL