c - 我想知道 c while 谓词中发生了什么?

标签 c

我看到一些 C while 循环,其谓词为 while(*ptr),而 ptr 通常是 char * 类型,这是如何工作的?这是否意味着“while()”也将接受 1 或 0 以外的值作为谓词?

最佳答案

在 C 中,任何非零值都被视为“true”,因此只要 *ptr 非零,while (*ptr) 就会循环。

关于c - 我想知道 c while 谓词中发生了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4911401/

相关文章:

c - gcc 的优化器在这里做了一些奇怪的事情吗?

c - 为什么这个程序分配了8页,但只能容纳2048个8字节的节点?

c - 我有一个函数,它有 int a 和 int b 我所要做的就是找到最大值

c - 当非阻塞流套接字连接时调用 getsockname() 是否安全?

c - 嵌入式系统的对称加密算法

c - 对链表进行排序的通用函数

c - 如何测试字符串的格式?

python - 将 C 方法附加到现有的 Python 类

c - 像素没有被绘制到屏幕上并且无法退出。可能是 MacOSX 相关的错误?

c - C 中的类型提升和类型转换