对于作业,我需要声明多个结构,没有问题.这些声明如下:
typedef struct struct1{
struct2* object;
}
typedef struct struct2{
struct1* object;
}
// functions using both struct1 and struct2 parameters
Run Code Online (Sandbox Code Playgroud)
当然,这会给我一个错误,因为struct2没有在struct1之前声明.因此,我尝试通过推杆事先声明它
struct struct2;
Run Code Online (Sandbox Code Playgroud)
在顶部.然而,这要求我将struct1块中的对象称为
typedef struct struct1{
struct struct2* obj;
}
Run Code Online (Sandbox Code Playgroud)
这个结构的函数将用于使用struct1*和struct2*参数,并进行测试(包括构造函数).使用上面示例中的struct标签会给我带来无数错误.有谁知道如何解决这一问题?
我正在使用嵌套的while循环,并遇到问题,因为内循环只运行一次.为了证明我已经做了一些测试代码.
#include <stdio.h>
int main(){
int i = 0;
int j = 0;
while(i < 10){
printf("i:%d\n", i);
while(j < 10){
printf("j:%d\n", j);
j++;
}
i++;
}
}
Run Code Online (Sandbox Code Playgroud)
返回:
i:0
j:0
j:1
j:2
j:3
j:4
j:5
j:6
j:7
j:8
j:9
i:1
i:2
i:3
i:4
i:5
i:6
i:7
i:8
i:9
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释为什么嵌套循环不会执行10次?我该怎么做才能解决这个问题?