如何将数字加到字符串里 如何把数字从字符串取出来 产生随机数的函数

本文介绍了一段关于MAC地址处理的代码实现,包括从字符串中解析MAC地址并将其保存到数组中,若未获取到有效MAC地址,则生成随机MAC地址,并打印生成的MAC地址。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

if(mac!=NULL){
pr_usbnet("usbnet>>>%s: meig_mac_save!=NULL @@@@@@\n", __func__);
sscanf(mac,":%02X,%02X,%02X,%02X,%02X,%02X",
&mac_addr_meig[0],&mac_addr_meig[1],&mac_addr_meig[2],
&mac_addr_meig[3],&mac_addr_meig[4],&mac_addr_meig[5]);  //从字符串取出数字
}


if(mac_addr_meig[0]>0 || mac_addr_meig[1]>0|| mac_addr_meig[2]>0 ||
mac_addr_meig[3]>0|| mac_addr_meig[4]>0|| mac_addr_meig[5]>0){
printk(KERN_ERR "meig have mac : %s\n", mac);
flag_mac=0;
}else{
for (i=0; i<6; i++){
get_random_bytes(&mac_addr_meig[i], sizeof(unsigned int));  //产生随机数
mac_addr_meig[i] &=0xff;
pr_usbnet("usbnet>>>%s: get random number: mac_addr_meig[%d]=%d\n",__func__, i, mac_addr_meig[i]);
}
flag_mac=1;
sprintf(re_mac_buf, "mac#:%02X,%02X,%02X,%02X,%02X,%02X#",mac_addr_meig[0],mac_addr_meig[1],mac_addr_meig[2],
mac_addr_meig[3],mac_addr_meig[4],mac_addr_meig[5]);         //将数字加入字符串
printk(KERN_ERR "meig jjjjjj  re_mac_buf=%s\n", re_mac_buf);
//get_partition_info(NODE,re_mac_buf,MAC_ADDR_OFFSET,size1, WRITE_FLAG);
}


if(flag_mac){
pr_usbnet("usbnet>>>%s: call mac_wr_part_work\n", __func__);
schedule_delayed_work(&dev->mac_wr_part_work, msecs_to_jiffies(30000));
}


pr_usbnet("usbnet>>>%s: exit",__func__);
return size;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值