我有以下行将参数args[]
和length
发送到名为largest
的方法。
printf("Largest is: %d \n", largest(args[], length));
当我尝试运行此操作时,我收到以下错误:
error: expected expression before ']' token
答案 0 :(得分:4)
因为您需要在运算符方形块之间放置一个整数,否则不要指定方括号:
printf("Largest is: %d \n", largest(&args[0], length));
或
printf("Largest is: %d \n", largest(args, length));
请注意,args[0]
与*(args + 0)
相同,但args[]
会出错,因为它需要一个数字来汇总......
答案 1 :(得分:1)
printf("Largest is: %d \n", largest(args, length));
只需删除' []',因为args是指针,而且是函数的期望值。
答案 2 :(得分:1)
你可能只想要数组的指针,所以改为传递largest(args, length)
。
答案 3 :(得分:1)
你无法传递这样的数组。您必须将指针传递给数组(第一项):
printf("Largest is: %d \n", largest(args, length));