hexify.c

    xiaoxiao2023-11-04  125

    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只会输出一个字符,所以最终会出现只输出了每一个参数的一个字符。

    最新回复(0)