memcmp 中的第三个参数应该是 sizeof() 类型。我用以下内容阅读了这段代码
memcmp(st.magic, "outpt_01",sizeof(st.magic)) == 0 && st.version == 0 )
结构在哪里st
。
上面调用中第三个参数的类型是什么?它在做什么?
memcmp 中的第三个参数应该是 sizeof() 类型。我用以下内容阅读了这段代码
memcmp(st.magic, "outpt_01",sizeof(st.magic)) == 0 && st.version == 0 )
结构在哪里st
。
上面调用中第三个参数的类型是什么?它在做什么?
上面调用中第三个参数的类型是什么?
size_t
要比较的字节数。
它在做什么?
if (sizeof(st.magic) == 0 && st.version == 0)
memcmp(st.magic, "outpt_01", 1);
else
memcmp(st.magic, "outpt_01", 0);
正如@JoachimPileborg 所指出的,有一个错字:
memcmp(st.magic, "outpt_01",sizeof(st.magic)) == 0 && st.version == 0 )
-------------------------------------------------- ----------------------^ 额外的右括号
或者它是像(更有意义)这样的条件的一部分:
if (memcmp(st.magic, "outpt_01",sizeof(st.magic)) == 0 && st.version == 0) {