c语言中for语句里面有个k--+是啥意思?(完整是for(k=-1;k<0;k--+))
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言中for语句里面有个k--+是啥意思?(完整是for(k=-1;k<0;k--+))相关的知识,希望对你有一定的参考价值。
应该是输入错误,如果按照for(k=-1;k<0;k--+){}的话,编译会提示错误:请输入完整的表达式。所以k--+是不完整的表达式,可以修改为k--,此时是一个无限循环;也可以修改为k++,此时程序循环体执行一次;也可以修改为k--+1,此时也是无限循环。
你编译下就知道了,希望能帮到你。 参考技术A 应该是输入或打印错了。没有这样的语法。
要么把后面的+去掉,要么把前面的--改成一个+。 参考技术B 手误打 -- 的时候多打了个 + 吧。 参考技术C 没有这个表达式,如果是书上就是印刷错误,只有K--,K++,++K,--K,的形式
下面声明的类型不能是不完整类型的语句是啥意思
【中文标题】下面声明的类型不能是不完整类型的语句是啥意思【英文标题】:What is the meaning of statement below that the declared type shall not be incomplete type下面声明的类型不能是不完整类型的语句是什么意思 【发布时间】:2013-09-15 00:09:08 【问题描述】:C 标准规定:
如果对象标识符的声明是暂定的 定义并具有内部链接,声明的类型不应是 不完整的类型
“声明的类型不能是不完整的类型”是什么意思?
【问题讨论】:
【参考方案1】:这意味着你不能拥有:
static int arr[]; // This is illegal as per the quoted standard.
int main(void)
数组arr
是暂定定义的,类型不完整(缺少有关对象大小的信息),还具有内部链接(static
表示arr
具有内部链接)。
而以下(在文件范围内),
int i; // i is tentatively defined. Valid.
int arr[]; // tentative definition & incomplete type. A further definition
// of arr can appear elsewhere. If not, it's treated like
// int arr[] = 0; i.e. an array with 1 element.
// Valid.
有效。
【讨论】:
没有人编译器没有给出错误..这就是我首先想到的 您是否执行严格的标准合规性?当我执行gcc -Wall -pedantic -std=c99 t.c
时,我得到t.c:1:12: error: array size missing in ‘arr’ t.c:1:12: warning: ‘arr’ defined but not used [-Wunused-variable]
。 gcc 默认启用许多扩展,可能无法满足 C 标准的所有要求。使用上述选项,它会产生更好的诊断结果。以上是关于c语言中for语句里面有个k--+是啥意思?(完整是for(k=-1;k<0;k--+))的主要内容,如果未能解决你的问题,请参考以下文章