gpt4 book ai didi

c - 在 if? 中保存并使用 memchr 的返回值? "if ( ptr = memchr(str1, ' 4', sizeof(str1)) )"?

转载 作者:太空宇宙 更新时间:2023-11-04 01:13:08 26 4
gpt4 key购买 nike

问题:如果你这样做

if ( ptr = memchr( str1, '4', sizeof(str1) ) )
{
// do stuff using ptr
}

然后你每次都会输入并做“东西”。但如果你只是这样做

if ( memchr( str1, '4', sizeof(str1) ) )
{
// would do stuff but don't have ptr!
}

然后您将进入,但您将没有指向“4”在 str1 中的位置的指针。我需要针对几种可能性进行评估和处理,例如如果为“4”,否则如果为“7”,否则如果为“1”等。

那么评估该字符是否存在并使用返回的指针的最有效方法是什么?当然不是

if ( memchr( str1, '4', sizeof(str1) ) )
{
ptr = memchr( str1, '4', sizeof(str1) )
// do stuff using ptr
}

最佳答案

赋值运算符返回被赋值的值,这(连同右结合性)是 a=b=c; 起作用的原因。所以你的第一个例子会工作得很好。

关于c - 在 if? 中保存并使用 memchr 的返回值? "if ( ptr = memchr(str1, ' 4', sizeof(str1)) )"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7502332/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com