home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
view JSON data
|
view as text
This file was processed as: DOS BACKUP file
(archive/dosBackupFile).
You can browse this item here: BTPRINT.C
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| DOS BACKUP file (archive/dosBackupFile)
| magic
| Supported |
66%
| dexvert
| Compact Compressed (Unix) (archive/compact)
| ext
| Supported |
100%
| file
| DOS 2.0-3.2 backed up file \CBTREE\PROGRAMS\BTPRINT.C
| default
| |
99%
| file
| data
| default
| |
51%
| TrID
| DOS 2.0-3.2 backup
| default
| |
48%
| TrID
| MP3 audio
| default (weak)
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| ff 01 00 00 00 5c 43 42 | 54 52 45 45 5c 50 52 4f |.....\CB|TREE\PRO|
|00000010| 47 52 41 4d 53 5c 42 54 | 50 52 49 4e 54 2e 43 00 |GRAMS\BT|PRINT.C.|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000050| 00 00 00 1b 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000060| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000080| 2f 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |/*******|********|
|00000090| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000a0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000b0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000000c0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 0d 0a 20 2a 0d 0a 20 |********|*.. *.. |
|000000d0| 2a 20 62 74 70 72 69 6e | 74 2e 63 20 20 20 2d 2d |* btprin|t.c --|
|000000e0| 20 74 72 61 76 65 72 73 | 65 20 61 6e 64 20 70 72 | travers|e and pr|
|000000f0| 69 6e 74 20 61 20 42 2b | 74 72 65 65 20 74 6f 20 |int a B+|tree to |
|00000100| 67 69 76 65 6e 20 66 69 | 6c 65 20 73 74 72 65 61 |given fi|le strea|
|00000110| 6d 0d 0a 20 2a 0d 0a 20 | 2a 2f 0d 0a 0d 0a 2f 2a |m.. *.. |*/..../*|
|00000120| 20 4e 6f 74 65 3a 20 62 | 74 70 72 69 6e 74 20 69 | Note: b|tprint i|
|00000130| 73 20 61 20 72 65 63 75 | 72 73 69 76 65 20 66 75 |s a recu|rsive fu|
|00000140| 6e 63 74 69 6f 6e 2e 20 | 2a 2f 0d 0a 0d 0a 23 69 |nction. |*/....#i|
|00000150| 6e 63 6c 75 64 65 20 3c | 73 74 64 69 6f 2e 68 3e |nclude <|stdio.h>|
|00000160| 0d 0a 23 69 6e 63 6c 75 | 64 65 20 22 63 62 74 72 |..#inclu|de "cbtr|
|00000170| 65 65 2e 68 22 0d 0a 0d | 0a 23 69 66 20 41 6d 69 |ee.h"...|.#if Ami|
|00000180| 67 61 44 4f 53 20 26 20 | 4c 43 0d 0a 23 64 65 66 |gaDOS & |LC..#def|
|00000190| 69 6e 65 20 70 72 69 6e | 74 66 20 20 20 69 70 72 |ine prin|tf ipr|
|000001a0| 69 6e 74 66 0d 0a 23 64 | 65 66 69 6e 65 20 66 70 |intf..#d|efine fp|
|000001b0| 72 69 6e 74 66 20 69 66 | 70 72 69 6e 74 66 0d 0a |rintf if|printf..|
|000001c0| 23 65 6e 64 69 66 0d 0a | 0d 0a 76 6f 69 64 20 62 |#endif..|..void b|
|000001d0| 74 70 72 69 6e 74 28 66 | 64 69 78 2c 20 66 70 72 |tprint(f|dix, fpr|
|000001e0| 2c 20 70 74 72 6c 6f 63 | 2c 20 70 77 69 64 74 68 |, ptrloc|, pwidth|
|000001f0| 2c 20 62 74 63 70 2c 20 | 69 64 78 70 72 6e 74 29 |, btcp, |idxprnt)|
|00000200| 0d 0a 69 6e 74 20 66 64 | 69 78 3b 0d 0a 46 49 4c |..int fd|ix;..FIL|
|00000210| 45 20 2a 66 70 72 3b 0d | 0a 6c 6f 6e 67 20 70 74 |E *fpr;.|.long pt|
|00000220| 72 6c 6f 63 3b 0d 0a 69 | 6e 74 20 70 77 69 64 74 |rloc;..i|nt pwidt|
|00000230| 68 3b 0d 0a 42 54 43 20 | 2a 62 74 63 70 3b 0d 0a |h;..BTC |*btcp;..|
|00000240| 69 6e 74 20 69 64 78 70 | 72 6e 74 3b 0d 0a 7b 0d |int idxp|rnt;..{.|
|00000250| 0a 20 20 20 65 78 74 65 | 72 6e 20 63 68 61 72 20 |. exte|rn char |
|00000260| 2a 63 61 6c 6c 6f 63 28 | 29 3b 0d 0a 20 20 20 65 |*calloc(|);.. e|
|00000270| 78 74 65 72 6e 20 76 6f | 69 64 20 20 70 72 6e 6f |xtern vo|id prno|
|00000280| 64 65 28 29 3b 0d 0a 20 | 20 20 42 54 49 44 58 42 |de();.. | BTIDXB|
|00000290| 4c 4b 20 2a 70 62 6c 6b | 3b 0d 0a 20 20 20 72 65 |LK *pblk|;.. re|
|000002a0| 67 69 73 74 65 72 20 69 | 6e 74 20 6d 3b 0d 0a 0d |gister i|nt m;...|
|000002b0| 0a 20 20 20 69 66 28 20 | 21 28 70 62 6c 6b 20 3d |. if( |!(pblk =|
|000002c0| 20 28 42 54 49 44 58 42 | 4c 4b 20 2a 29 63 61 6c | (BTIDXB|LK *)cal|
|000002d0| 6c 6f 63 28 73 69 7a 65 | 6f 66 28 42 54 49 44 58 |loc(size|of(BTIDX|
|000002e0| 42 4c 4b 29 20 2b 20 62 | 74 63 70 2d 3e 62 74 63 |BLK) + b|tcp->btc|
|000002f0| 65 6c 6c 73 20 2a 0d 0a | 20 20 20 20 20 20 20 20 |ells *..| |
|00000300| 20 73 69 7a 65 6f 66 28 | 42 54 49 44 58 29 2c 20 | sizeof(|BTIDX), |
|00000310| 53 5a 43 48 41 52 29 20 | 29 29 0d 0a 20 20 20 20 |SZCHAR) |)).. |
|00000320| 20 20 63 6b 65 72 72 6f | 72 28 2d 20 43 4b 5f 4e | ckerro|r(- CK_N|
|00000330| 4f 4d 45 4d 2c 20 22 7a | 7a 22 29 3b 0d 0a 20 20 |OMEM, "z|z");.. |
|00000340| 20 70 62 6c 6b 2d 3e 62 | 6c 6b 61 6c 6c 6f 63 20 | pblk->b|lkalloc |
|00000350| 3d 20 30 3b 0d 0a 0d 0a | 20 20 20 67 65 74 69 64 |= 0;....| getid|
|00000360| 78 72 28 66 64 69 78 2c | 20 70 74 72 6c 6f 63 2c |xr(fdix,| ptrloc,|
|00000370| 20 70 62 6c 6b 2c 20 62 | 74 63 70 2d 3e 62 74 69 | pblk, b|tcp->bti|
|00000380| 64 78 6c 65 6e 2c 20 62 | 74 63 70 2d 3e 62 74 6b |dxlen, b|tcp->btk|
|00000390| 65 79 6c 65 6e 29 3b 0d | 0a 20 20 20 70 72 69 6e |eylen);.|. prin|
|000003a0| 74 66 28 22 5c 6e 50 72 | 6f 63 65 73 73 69 6e 67 |tf("\nPr|ocessing|
|000003b0| 20 49 6e 64 65 78 20 4e | 6f 64 65 20 20 20 20 20 | Index N|ode |
|000003c0| 25 6c 64 22 2c 20 70 74 | 72 6c 6f 63 29 3b 0d 0a |%ld", pt|rloc);..|
|000003d0| 0d 0a 20 20 20 69 66 20 | 28 70 62 6c 6b 2d 3e 62 |.. if |(pblk->b|
|000003e0| 6c 6b 74 79 70 65 20 3d | 3d 20 30 29 7b 20 20 20 |lktype =|= 0){ |
|000003f0| 2f 2a 20 49 4e 44 45 58 | 20 6e 6f 64 65 20 2a 2f |/* INDEX| node */|
|00000400| 0d 0a 0d 0a 20 20 20 20 | 20 20 69 66 20 28 69 64 |.... | if (id|
|00000410| 78 70 72 6e 74 29 0d 0a | 20 20 20 20 20 20 20 20 |xprnt)..| |
|00000420| 20 70 72 6e 6f 64 65 28 | 66 70 72 2c 20 70 74 72 | prnode(|fpr, ptr|
|00000430| 6c 6f 63 2c 20 70 62 6c | 6b 2c 20 70 77 69 64 74 |loc, pbl|k, pwidt|
|00000440| 68 29 3b 20 20 20 2f 2a | 20 70 72 69 6e 74 20 74 |h); /*| print t|
|00000450| 68 69 73 20 6e 6f 64 65 | 20 2a 2f 0d 0a 0d 0a 20 |his node| */.... |
|00000460| 20 20 20 20 20 66 6f 72 | 20 28 6d 20 3d 20 30 3b | for| (m = 0;|
|00000470| 20 6d 20 3c 20 70 62 6c | 6b 2d 3e 63 65 6c 6c 69 | m < pbl|k->celli|
|00000480| 63 6e 74 3b 20 6d 2b 2b | 29 0d 0a 20 20 20 20 20 |cnt; m++|).. |
|00000490| 20 20 20 20 62 74 70 72 | 69 6e 74 28 66 64 69 78 | btpr|int(fdix|
|000004a0| 2c 20 66 70 72 2c 20 70 | 62 6c 6b 2d 3e 62 74 70 |, fpr, p|blk->btp|
|000004b0| 61 67 65 5b 6d 5d 2e 62 | 74 70 74 72 2c 20 70 77 |age[m].b|tptr, pw|
|000004c0| 69 64 74 68 2c 20 62 74 | 63 70 2c 20 69 64 78 70 |idth, bt|cp, idxp|
|000004d0| 72 6e 74 29 3b 0d 0a 20 | 20 20 7d 0d 0a 20 20 20 |rnt);.. | }.. |
|000004e0| 65 6c 73 65 20 20 20 20 | 2f 2a 20 4c 45 41 46 20 |else |/* LEAF |
|000004f0| 6e 6f 64 65 20 2a 2f 0d | 0a 20 20 20 20 20 20 70 |node */.|. p|
|00000500| 72 6e 6f 64 65 28 66 70 | 72 2c 20 70 74 72 6c 6f |rnode(fp|r, ptrlo|
|00000510| 63 2c 20 70 62 6c 6b 2c | 20 70 77 69 64 74 68 29 |c, pblk,| pwidth)|
|00000520| 3b 0d 0a 0d 0a 20 20 20 | 66 72 65 65 6b 65 79 73 |;.... |freekeys|
|00000530| 28 70 62 6c 6b 29 3b 0d | 0a 20 20 20 46 52 45 45 |(pblk);.|. FREE|
|00000540| 28 70 62 6c 6b 29 3b 0d | 0a 7d 0d 0a 0d 0a 76 6f |(pblk);.|.}....vo|
|00000550| 69 64 20 70 72 6e 6f 64 | 65 28 66 70 72 2c 20 70 |id prnod|e(fpr, p|
|00000560| 74 72 6c 6f 63 2c 20 70 | 62 6c 6b 2c 20 70 77 69 |trloc, p|blk, pwi|
|00000570| 64 74 68 29 0d 0a 46 49 | 4c 45 20 20 20 20 20 2a |dth)..FI|LE *|
|00000580| 66 70 72 3b 0d 0a 6c 6f | 6e 67 20 20 20 20 20 20 |fpr;..lo|ng |
|00000590| 70 74 72 6c 6f 63 3b 0d | 0a 42 54 49 44 58 42 4c |ptrloc;.|.BTIDXBL|
|000005a0| 4b 20 2a 70 62 6c 6b 3b | 0d 0a 69 6e 74 20 20 20 |K *pblk;|..int |
|000005b0| 20 20 20 20 70 77 69 64 | 74 68 3b 0d 0a 7b 0d 0a | pwid|th;..{..|
|000005c0| 20 20 20 69 6e 74 20 6d | 2c 20 66 6c 64 6c 65 6e | int m|, fldlen|
|000005d0| 2c 20 6c 6e 63 6e 74 20 | 3d 20 30 3b 0d 0a 20 20 |, lncnt |= 0;.. |
|000005e0| 20 63 68 61 72 20 6c 62 | 75 66 66 5b 31 33 5d 3b | char lb|uff[13];|
|000005f0| 0d 0a 0d 0a 20 20 20 66 | 70 72 69 6e 74 66 28 66 |.... f|printf(f|
|00000600| 70 72 2c 0d 0a 20 20 20 | 20 20 20 20 20 20 22 5c |pr,.. | "\|
|00000610| 6e 25 73 25 6c 64 20 20 | 63 65 6c 6c 73 3a 20 25 |n%s%ld |cells: %|
|00000620| 75 20 66 77 64 70 74 72 | 3a 20 25 6c 64 20 62 77 |u fwdptr|: %ld bw|
|00000630| 64 70 74 72 3a 20 25 6c | 64 20 20 3d 3d 3d 3d 3d |dptr: %l|d =====|
|00000640| 3d 3d 3d 3d 5c 6e 22 2c | 0d 0a 20 20 20 20 20 20 |====\n",|.. |
|00000650| 20 20 20 70 62 6c 6b 2d | 3e 62 6c 6b 74 79 70 65 | pblk-|>blktype|
|00000660| 20 3f 20 22 3d 3d 3d 3d | 3d 3d 3d 3d 3d 20 20 52 | ? "====|===== R|
|00000670| 65 63 6f 72 64 20 6e 75 | 6d 62 65 72 3a 20 22 20 |ecord nu|mber: " |
|00000680| 3a 0d 0a 20 20 20 20 20 | 20 20 20 20 20 20 20 20 |:.. | |
|00000690| 20 20 20 20 20 20 20 20 | 20 20 20 20 22 3d 20 49 | | "= I|
|000006a0| 4e 44 45 58 20 3d 20 20 | 52 65 63 6f 72 64 20 6e |NDEX = |Record n|
|000006b0| 75 6d 62 65 72 3a 20 22 | 20 2c 0d 0a 20 20 20 20 |umber: "| ,.. |
|000006c0| 20 20 20 20 20 70 74 72 | 6c 6f 63 2c 20 70 62 6c | ptr|loc, pbl|
|000006d0| 6b 2d 3e 63 65 6c 6c 69 | 63 6e 74 2c 20 70 62 6c |k->celli|cnt, pbl|
|000006e0| 6b 2d 3e 66 77 64 70 61 | 67 65 2c 20 70 62 6c 6b |k->fwdpa|ge, pblk|
|000006f0| 2d 3e 62 77 64 70 61 67 | 65 29 3b 0d 0a 0d 0a 20 |->bwdpag|e);.... |
|00000700| 20 20 66 6f 72 20 28 6d | 20 3d 20 30 3b 20 6d 20 | for (m| = 0; m |
|00000710| 3c 20 70 62 6c 6b 2d 3e | 63 65 6c 6c 69 63 6e 74 |< pblk->|cellicnt|
|00000720| 3b 20 6d 2b 2b 29 0d 0a | 20 20 20 7b 0d 0a 20 20 |; m++)..| {.. |
|00000730| 20 20 20 20 66 6c 64 6c | 65 6e 20 3d 20 73 74 72 | fldl|en = str|
|00000740| 6c 65 6e 28 70 62 6c 6b | 2d 3e 62 74 70 61 67 65 |len(pblk|->btpage|
|00000750| 5b 6d 5d 2e 73 6b 65 79 | 6e 6d 65 29 20 2b 0d 0a |[m].skey|nme) +..|
|00000760| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 62 | | b|
|00000770| 74 5f 6c 74 6f 61 28 20 | 28 6c 6f 6e 67 29 20 70 |t_ltoa( |(long) p|
|00000780| 62 6c 6b 2d 3e 62 74 70 | 61 67 65 5b 6d 5d 2e 62 |blk->btp|age[m].b|
|00000790| 74 70 74 72 2c 20 6c 62 | 75 66 66 29 20 2b 20 37 |tptr, lb|uff) + 7|
|000007a0| 3b 0d 0a 20 20 20 20 20 | 20 69 66 28 20 28 6c 6e |;.. | if( (ln|
|000007b0| 63 6e 74 20 2b 20 66 6c | 64 6c 65 6e 29 20 3e 20 |cnt + fl|dlen) > |
|000007c0| 70 77 69 64 74 68 20 29 | 7b 0d 0a 20 20 20 20 20 |pwidth )|{.. |
|000007d0| 20 20 20 20 6c 6e 63 6e | 74 20 3d 20 30 3b 0d 0a | lncn|t = 0;..|
|000007e0| 20 20 20 20 20 20 20 20 | 20 66 70 72 69 6e 74 66 | | fprintf|
|000007f0| 28 66 70 72 2c 22 5c 6e | 22 29 3b 0d 0a 20 20 20 |(fpr,"\n|");.. |
|00000800| 20 20 20 7d 0d 0a 0d 0a | 20 20 20 20 20 20 6c 6e | }....| ln|
|00000810| 63 6e 74 20 2b 3d 20 66 | 6c 64 6c 65 6e 3b 0d 0a |cnt += f|ldlen;..|
|00000820| 20 20 20 20 20 20 66 70 | 72 69 6e 74 66 28 66 70 | fp|rintf(fp|
|00000830| 72 2c 20 22 5b 20 25 73 | 20 25 6c 64 5d 20 22 2c |r, "[ %s| %ld] ",|
|00000840| 20 70 62 6c 6b 2d 3e 62 | 74 70 61 67 65 5b 6d 5d | pblk->b|tpage[m]|
|00000850| 2e 73 6b 65 79 6e 6d 65 | 2c 0d 0a 20 20 20 20 20 |.skeynme|,.. |
|00000860| 20 20 20 20 20 20 20 70 | 62 6c 6b 2d 3e 62 74 70 | p|blk->btp|
|00000870| 61 67 65 5b 6d 5d 2e 62 | 74 70 74 72 29 3b 0d 0a |age[m].b|tptr);..|
|00000880| 20 20 20 7d 0d 0a 20 20 | 20 66 70 72 69 6e 74 66 | }.. | fprintf|
|00000890| 28 66 70 72 2c 22 5c 6e | 22 29 3b 0d 0a 7d 0d 0a |(fpr,"\n|");..}..|
|000008a0| 1a | |. | |
+--------+-------------------------+-------------------------+--------+--------+