__isoc99_sscanf() 有啥作用?

Posted

技术标签:

【中文标题】__isoc99_sscanf() 有啥作用?【英文标题】:What does __isoc99_sscanf() do?__isoc99_sscanf() 有什么作用? 【发布时间】:2021-12-18 02:47:23 【问题描述】:

这是 C 中的代码行:

void func_g(undefined4 pmt1)

    int amt, elmt1;
    uint elmt3[3];

    amt = __isoc99_sscanf(pmt1, "%d %d", elmt1, &elmt3);
    return;

__isoc99_sscanf 试图做什么?

【问题讨论】:

以两个下划线开头的函数名保留用于实现。这是编译器的内部函数。 您还应该看到this thread 根据名字,我猜是sscanf()的C99兼容版本的代码。 @Barmar 仅供参考:***.com/questions/56444576/… 可能被认为是骗子——我会让其他人决定。 int ... elmt1; ... __isoc99_sscanf(pmt1, "%d %d", elmt1, &elmt3); 看起来不对。在 int * 预期的地方传递 int&elmt3 看起来也很狡猾,因为它不是 int* 【参考方案1】:

isoc99_sscanf(和其他相关功能)于 2007 年推出,以符合C99 标准。作为引入 C99 支持的一部分,"sscanf" 被重定向到 "__isoc99_sscanf"这是编译器特定的语法 gcc 使用它

该函数返回匹配成功的输入项数 和分配,它可以比规定的要少,甚至为零 早期匹配失败的事件。

【讨论】:

我相信这是特定于 glibc 的。最好说明您正在谈论的编译器/库。 我说的是 gcc。

以上是关于__isoc99_sscanf() 有啥作用?的主要内容,如果未能解决你的问题,请参考以下文章

未定义引用`__isoc99_sscanf@GLIBC_2.7'

__init__ 方法有啥作用? [复制]

`__import__('pkg_resources').declare_namespace(__name__)` 有啥作用?

php apache有啥用

Error:LNK2019无法解析的外部符号_sscanf, _vsprintf

sscanf_强大的数据读取-转换