【发布时间】:2016-05-20 07:32:22
【问题描述】:
我是一名新手程序员,试图理解 C 中的数组。具体来说,我想获取变量的数值并将其输入数组。我试图将值分配给数组,但失败并显示错误消息。有人可以简单地解释一下如何将一个值推送到一个数组中,然后能够只访问最后一个数字吗?
我的最后一次尝试:
#include <stdio.h>
unsigned int TMR0 = 158;
int main(void)
{
unsigned int V = TMR0;
unsigned int Random[2] = {V};
printf("%d \n" , *(Random+2));
return 0;
谢谢。
【问题讨论】:
-
当你说“访问最后一位”时,你是说你想要“158”,还是说你想要“8”?我担心是后者,在这种情况下,你需要在学习数组之前倒带学习整数。
-
*(Random+2)与Random[2]相同,并且在您访问数组之外的无效内存位置时调用 UB。 -
您将从良好的教学资源中受益匪浅。购买 Steven Prata 的 C Primer Plus 的 PDF 或硬拷贝。通读一遍,并在每章末尾做所有的例子和练习。大多数大学生可以在一个长周末做到这一点。
-
你能把问题说清楚一点吗?它为其他人节省了时间。
-
@paddy - 是的,我希望访问最后一个数字“8”。我是数组新手,只有非常基本的 C 理解。谢谢
标签: c arrays variables variable-assignment