sách gpt4 ai đã đi

Biểu thức C assert()

In lại 作者:行者123 更新时间:2023-12-05 09:08:47 27 4
mua khóa gpt4 Nike

C 中的 assert() 函数工作原理对我来说就像一片黑暗的森林。根据这里的答案https://stackoverflow.com/a/1571360 ,您可以使用以下构造将自定义消息输出到您的断言:assert(retval == 1 && “retval is false”);,那么 assert 如何知道只有一个 < em>binary and 实际上包含一条消息 它不是表达式本身的一部分,而且,它使用了哪些预编译器指令来揭示错误的来源?

1 Câu trả lời

消息是表达式的一部分,因此断言不会知道消息不是表达式的一部分。

khi retval == 1 为 false 时,retval == 1 && (something) 被评估为 false,而不评估 (something).

khi retval == 1 为真时,"retval is false" 被评估,因为它被转换为有效指针,它也将被评估为真,使 retval == 1 && "retval is false" 评估为 true。

Vì vậy,retval == 1 && "retval is false" 的真实性与 retval == 1 相同。

关于C assert() 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63040261/

27 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com