首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将int传递给sysfs

将int传递给sysfs
EN

Stack Overflow用户
提问于 2022-02-25 18:22:59
回答 1查看 60关注 0票数 0

我想把int传递给sysfs_store

我试过的

用户空间

代码语言:javascript
复制
int tid = 5234; // can be negative as well
char buf[5];
sprintf(buf, "%d\n", tid);
write (fd, buf, 1);

驱动程序sysfs_store

代码语言:javascript
复制
int v;
kstrtoint(buf,10,&v);
pr_info("%d\n",v); // printing only first digit 5. Should print 5234
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-25 18:27:09

因为sprintf()返回字节复制计数;使用它

还切换到snprintf()以避免缓冲区溢出。

代码语言:javascript
复制
int data_len = snprintf(buf, sizeof(buf), "%d\n", tid);
write (fd, buf, data_len);

最好有更大的缓冲区来覆盖所有的场景。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71270195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档