📄 scnvfn01.c
字号:
/*-
* ----------------------------------------------------------------------
* File : SCNVFN01.C
* Creator : Blake Miller
* Version : 01.00.00 February 1991
* Language : Microsoft Quick C Version 2.0
* Purpose : String Conversion Function
* : Convert Unsigned Long, Unsigned Int, or Unsigned Char
* : to a 'Binary' string.
* ----------------------------------------------------------------------
*/
void scv_uvtobs ( void *data, char *s,
int msbit, int lsbit,
int schar, int cchar );
/*- Binary String Converter ------------------**
* Convert from a number into a 'binary' string.
* That is, convert a byte, int, or long into a string
* with a specified character for the '1' level and
* another character for the logical '0' level.
*/
void scv_uvtobs (void *data, char *s, int msbit, int lsbit,
int schar, int cchar )
{
unsigned long mask; /* bit select mask */
unsigned long sbit; /* start bit */
unsigned long ebit; /* end bit */
unsigned long ltmp; /* temporary long */
ltmp = * (unsigned long *) data; /* get data into long */
*s = 0; /* clear string */
sbit = 0x01; /* set start bit */
sbit = sbit << msbit; /* initialize position */
ebit = 0x01; /* set end bit */
ebit = ebit << lsbit; /* initialize position */
for ( mask = sbit; mask >= ebit; mask = (mask >> 1) ){
if ( ltmp & mask ) *s = (char) schar; /* set character */
else *s = (char) cchar; /* clear character */
s++; /* next string byte */
}
*s = 0; /* EOS for string */
}
/*-
* ----------------------------------------------------------------------
* END SCNVFN01.C Source File
* ----------------------------------------------------------------------
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -