欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

晟松的代码学习日志之hexify.c

程序员文章站 2022-03-04 22:01:46
...

5:hexify.c
代码为:

/* Convert sequence of hex digits on command line into a string, terminated by \n */
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) {
    int i;
    for (i = 1; i < argc; i++) {
	unsigned long dig = strtoul(argv[i], NULL, 16);//stroul函数将字符数转化为无符号长整型数
	putchar((char) dig);//将dig强制转换为字符型
    }
    putchar('\n');
    return 0;
}
/* 输入参数:30 31 32 33 34 35 36 37 38 39 输出为:0123456789
*/

strtoul()函数是用于将字符串转化为无符号长整型数,其中第一个参数是被转换数,第二个参数为返回字符串有效数字的结束地址,第三个参数为要转换的进制,即转换基数。在本程序中,将每一个参数转换为16进制,再转换为无符号长整型,最后输出,而输出函数putchar只会输出一个字符,所以最终会出现只输出了每一个参数的一个字符。

相关标签: 学习日志