awk中实现ord函数功能

本站所有内容来自互联网收集,仅供学习和交流,请勿用于商业用途。如有侵权、不妥之处,请第一时间联系我们删除!Q群:迪思分享

免费资源网 – https://freexyz.cn/

在awk中并未直接提供ord函数,所以在将某个字符转换为码时,需要自己来实现

复制代码

代码如下:

awk BEGIN{for (i = 0; i < 256; ++i) {ord[sprintf(“%c”, i)] = i;} }  { print ord[a];  ord [b]; }

这里主要是构造了ord为key,val的数据结构,key为char字符,val对应的ascii码

附:awk得到字母的ASC值实现

复制代码

代码如下:

-(dearvoid@LinuxEden:Forum)-(~/tmp)-

[$$=18347 $?=0] ; cat foo.awk

#!/bin/awk -f

BEGIN {

    for (ii = 0; ii < 256; ++ii) {

        ch = sprintf(“%c”, ii);

        ascii[ch] = ii;

    }

for (ii = 1; ii < ARGC; ii++) {

        print “ord(” ARGV[ii] ” = ” ascii[ARGV[ii]];

    }

}

-(dearvoid@LinuxEden:Forum)-(~/tmp)-

[$$=18347 $?=0] ; ./foo.awk a b c 1 2 3

ord(a) = 97

ord(b) = 98

ord(c) = 99

ord(1) = 49

ord(2) = 50

ord(3) = 51

-(dearvoid@LinuxEden:Forum)-(~/tmp)-

[$$=18347 $?=0] ; bye

免费资源网 – https://freexyz.cn/


© 版权声明
THE END
★喜欢这篇文章吗?喜欢的话,麻烦动动手指支持一下!★
点赞13 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容