维基百科
B語言
B語言是一种通用的程序设计语言。自從被C語言取代之後,它幾乎已遭棄置。
B語言大約是於1969年時由美國貝爾實驗室的電腦科學家──肯·湯普森在丹尼斯·利奇的支持下設計出來的。肯·湯普森最初想在UNIX上開發一個Fortran編譯器,但後來引進了BCPL的風格,形成一個新的語言。
後來,丹尼斯·利奇以B語言為基礎開發出C語言,至此C語言漸漸發展成為目前世界上最常用的程式語言之一。
例子
下面是肯·湯普森在《B用户参考》中提供的源代碼[2]:
/* The following function will print a non-negative number, n, to the base b, where 2<=b<=10. This routine uses the fact that in the ASCII character set, the digits 0 to 9 have sequential code values. */ printn(n, b) { extrn putchar; auto a; /* Wikipedia note: auto declares a variable with automatic storage (lifetime is function scope), not "automatic typing" as in C++11. */ if (a = n / b) /* assignment, not test for equality */ printn(a, b); /* recursive */ putchar(n % b + '0'); }
/* The following program will calculate the constant e-2 to about 4000 decimal digits, and print it 50 characters to the line in groups of 5 characters. The method is simple output conversion of the expansion 1/2! + 1/3! + ... = .111.... where the bases of the digits are 2, 3, 4, . . . */ main() { extrn putchar, n, v; auto i, c, col, a; i = col = 0; while(i<n) v[i++] = 1; while(col<2*n) { a = n+1 ; c = i = 0; while (i<n) { c =+ v[i] *10; v[i++] = c%a; c =/ a--; } putchar(c+'0'); if(!(++col%5)) putchar(col%50?' ': '*n'); } putchar('*n*n'); } v[2000]; n 2000;
參見
引用
外部連結
- The Development of the C Language(页面存档备份,存于互联网档案馆)