【发布时间】:2022-01-03 15:37:15
【问题描述】:
我正在尝试用数字填充数组而不使用scanf。我遇到了警告:assignment makes pointer from integer without a cast [-Wint-conversion]
p = (i + 1) * 100;
^
当我尝试打印数组时,数组输出随机值。如何解决?
#include<stdio.h>
int main() {
int nums[8], i;
int *p;
p = nums;
for (int i = 0; i < 8; ++i)
{
p = (i + 1) * 100;
p++;
}
return 0;
}
【问题讨论】:
-
*p = (i + 1) * 100; -
无论你做什么,不要添加演员表。
-
使用数组语法。
p[i] = (i+1)*100; -
@Lundin 为什么不
nums[i] = ...? ;) -
@Someprogrammerdude 太简单了,太易读了,我猜。
标签: c pointers compiler-errors type-conversion integer