Markdown写作技巧

增加目录及显示代码行号

Posted by yuchen on July 24, 2016

为博文增加目录

Catalog

  1. Table
  2. Reference
  3. Line & Code & Embedded
  4. Block & Code
  5. Catalog & Code

Table

基本类型 大小 包装器类型
boolean - Boolean
char 16-bit Character
byte 8 bits Byte
short 16 bits Short
int 32 bits Integer
long 64 bits Long
float 32 bits Float
double 64 bits Double
void - Void

Reference

Java还可以创建用来存放基本数据类型的数组。同样,编译器也能确保这种数组的初始化,因为它会将这种数组所占的内存全部置零。

Line & Code & Embedded

所有数值类型都有正负号,故不要去寻找无符号的数值类型。 注意:byte的取值为Unicode 0Unicode 2^16^-1

Block & Code

代码区块中,一般的 Markdown 语法不会被转换,像是星号便只是星号,这表示你可以很容易地以 Markdown 语法撰写 Markdown 语法相关的文件。

C

在C和C++中下述代码合法,但是在Java中却不能这样写:

/*
 * Simple doubly linked list implementation.
 *
 * Some of the internal functions ("__xxx") are useful when
 * manipulating whole lists rather than single entries, as
 * sometimes we already know the next/prev entries and we can
 * generate better code by using them directly rather than
 * using the generic single-entry routines.
 */

struct list_head {
    struct list_head *next, *prev;
};
#include <iostream>// 预处理命令
using namespace std;
class Student// 声明一个类,类名为Student
{
   private: // 以下为类中的私有部分
   int num; // 私有变量num
   int score;  // 私有变量score
   public: // 以下为类中的公用部分
   void setdata( ) // 定义公用函数setdata
   {
      cin>>num; // 输入num的值
      cin>>score;  // 输入score的值
   }
   void display( ) // 定义公用函数display
   {
     cout<<"num="<<num<<endl; // 输出num的值
     cout<<"score="<<score<<endl;//输出score的值
    };
}; // 类的声明结束
Student stud1,stud2; //定义stud1和stud2为Student类的变量,称为对象
int main( )// 主函数首部
{
   stud1.setdata( );  // 调用对象stud1的setdata函数
   stud2.setdata( );  // 调用对象stud2的setdata函数
   stud1.display( );  // 调用对象stud1的display函数
   stud2.display( );  // 调用对象stud2的display函数
   return 0;
}

C语言写的简单的定时关机程序

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int main()
{
    char cmd[20]="shutdown -s -t ";
    char t[5]="0";
    int c;
    system("title C语言关机程序");  //设置cmd窗口标题
    system("mode con cols=48 lines=25");  //窗口宽度高度 
    system("color f0");  //可以写成 red 调出颜色组
    system("date /T");
    system("TIME /T");
    printf("----------- C语言关机程序 -----------\n");
    printf("1.实现10分钟内的定时关闭计算机\n");
    printf("2.立即关闭计算机\n");
    printf("3.注销计算机\n");
    printf("0.退出系统\n");
    printf("-------------------------------------\n");
    scanf("%d",&c);
    switch(c) {
        case 1:
            printf("您想在多少秒后自动关闭计算机?(0~600)\n");
            scanf("%s",t);
            system(strcat(cmd,t));
            break;
        case 2:
            system("shutdown -p");
            break;
        case 3:
            system("shutdown -l");
            break;
        case 0:
            break;
        default:
            printf("Error!\n");
    }
    system("pause");
    return 0;
}

Java

Java中类变量和局部变量可以同名,如下所示:

public class StringDemo{

   public static void main(String args[]){
      char[] helloArray = { 'h', 'e', 'l', 'l', 'o', '.'};
      String helloString = new String(helloArray);  
      System.out.println( helloString );
   }
}
interface Animal{}

class Mammal implements Animal{}

public class Dog extends Mammal{
   public static void main(String args[]){

      Mammal m = new Mammal();
      Dog d = new Dog();

      System.out.println(m instanceof Animal);
      System.out.println(d instanceof Mammal);
      System.out.println(d instanceof Animal);
   }
}

Javascript

Javascript代码如下:

//AMD Wrapper

define(
    [types/Employee],    //依赖
    function(Employee){  //这个回调会在所有依赖都被加载后才执行

        function Programmer(){
            //do something
        };

        Programmer.prototype = new Employee();
        return Programmer;  //return Constructor
    }
)

Catalog & Code

1. [Table](#table)
2. [Reference](#reference)
3. [Line & Code & Embedded](#line--code--embedded)
4. [Block & Code](#block--code)
	- [C](#c)
	- [Java](#java)
5. [Catalog & Code](#catalog--code)

注意1:增加目录的代码中,每个目录名不能为中文,且两个及两个以上单词的目录名之间需要添加&符号分隔。#号后的引用必须为目录名的小写格式,且将&符号换成--符号。
注意2:每个标题要上下各空一行,每个代码块上下也要各空一行,每级标题1~6个#后都要先空一个空格再写标题名,这样才不会出现Markdown解析错误。

附录

也可以采用另外一种目录显示的代码风格(可采用中文作为目录),代码如下:


<a name="catalog" />

### 目录

* [概述](#overview)
	+ [宗旨](#philosophy)
	+ [兼容 HTML](#html)
* [区块元素](#block)
	+ [段落和换行](#p)
	+ [标题](#headers)
* [感谢](#acknowledgement)
* [参考文献](#ref)

***

<a name="overview" />

### 概述

<a name="philosophy" />

##### 宗旨

<a name="html" />

##### 兼容 HTML

<a name="block" />

### 区块元素

<a name="p" />

##### 段落和换行

<a name="headers" />

##### 标题

<a name="acknowledgement" />

### 感谢

<a name="ref" />

### 参考文献

显示效果如下:

目录


概述

宗旨

兼容 HTML

区块元素

段落和换行

标题

感谢

参考文献

个人主页: http://www.wzzju.top

博主邮箱: wzzju@mail.ustc.edu.cn


本文总阅读量