c语言 指针怎么指向一个结构数组?
就随便举个!输入输出的例子吧sturctstr{intn;ints;}。。。。然后怎么写!??谢谢!写指针指向结构数组。。然后是指针的输入输出!谢谢!...
就随便举个!输入输出的例子吧
sturct str{
int n;
int s;
}。。。。然后怎么写!?? 谢谢! 写指针指向结构数组。。然后是指针的输入输出! 谢谢! 展开
sturct str{
int n;
int s;
}。。。。然后怎么写!?? 谢谢! 写指针指向结构数组。。然后是指针的输入输出! 谢谢! 展开
展开全部
楼上都回答得这么复杂吗?我写简单一点的
struct str{
int n;
int s;
};
void main()
{struct str a[2]={1,2,3,4};//声明一个结构数组并对数组a[0]中的成员n和s
分别赋值为1和2,对a[1]中的成员设置为3和4。
注:有些编译器可能不需要最前面的struct来声明
结构对象。
struct str *p=a; //声明一个结构指针,并把结构数组的地址赋给该指针
printf("%d",p->n); //访问结构数组对象a[0]中的变量n的值,也就是1
printf("%d",(p+1)>n); //访问结构数组对象a[1]中的变量n的值,也就是3。因为指针p+1就指向了结构数结a的下一个位置,也就是a[1]处。
}
struct str{
int n;
int s;
};
void main()
{struct str a[2]={1,2,3,4};//声明一个结构数组并对数组a[0]中的成员n和s
分别赋值为1和2,对a[1]中的成员设置为3和4。
注:有些编译器可能不需要最前面的struct来声明
结构对象。
struct str *p=a; //声明一个结构指针,并把结构数组的地址赋给该指针
printf("%d",p->n); //访问结构数组对象a[0]中的变量n的值,也就是1
printf("%d",(p+1)>n); //访问结构数组对象a[1]中的变量n的值,也就是3。因为指针p+1就指向了结构数结a的下一个位置,也就是a[1]处。
}
展开全部
main()
{
typedef struct srt{
int n;
int s;
}str_xx;//自定义一个结构体
str_xx test_str;//按照自定义的一个结构体定义一个结构体
str_xx *test_prt;//按照自定义的一个结构体定义一个指针0
test_prt = test_str;//把这个指针指向这个结构体
test_prt->n = 0;//给结构体变量赋值
test_prt->s = 0;//给结构体变量赋值
printf("test_prt->n = %d test_ptr->s = %d\n",test_prt->n,test_prt->s);
}
{
typedef struct srt{
int n;
int s;
}str_xx;//自定义一个结构体
str_xx test_str;//按照自定义的一个结构体定义一个结构体
str_xx *test_prt;//按照自定义的一个结构体定义一个指针0
test_prt = test_str;//把这个指针指向这个结构体
test_prt->n = 0;//给结构体变量赋值
test_prt->s = 0;//给结构体变量赋值
printf("test_prt->n = %d test_ptr->s = %d\n",test_prt->n,test_prt->s);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
跟其他类型指针一样,定义一个结构体指针即可,例如:
struct name *p;//name结构体需要在这之前定义
这样指针p就是指向name结构的结构体指针。
struct name *p;//name结构体需要在这之前定义
这样指针p就是指向name结构的结构体指针。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
int iLen = 5;
str* pStr = new str[iLen];
str* pNext = pStr;
for (int i = 0; i < iLen; ++i)
{
pNext->n = i;
pNext->s = i;
pNext++;
}
pNext = pStr;
for ()
{
输出类似
}
str* pStr = new str[iLen];
str* pNext = pStr;
for (int i = 0; i < iLen; ++i)
{
pNext->n = i;
pNext->s = i;
pNext++;
}
pNext = pStr;
for ()
{
输出类似
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询