小编Fen*_*kin的帖子

存储在struct中的元素是否彼此相邻

如果我有一个结构,说:

struct A {
int a,b,c,d,e;
}
A m;//struct if 5 ints
int n[5];//array of 5 ints.
Run Code Online (Sandbox Code Playgroud)

我知道数组中的元素是一个接一个地存储的,所以我们可以使用*(n + i)或n [i]
但是在struct的情况下,每个元素是否彼此相邻存储(在结构A中)?

c++ struct c++11

2
推荐指数
1
解决办法
858
查看次数

这段关于scanf的代码是什么?

我正在浏览我朋友的obj加载代码.他用C++完成了它; 代码是:

bool LoadObj(char* given){
    char tempText[60];
    std::ifstream OB(given);
    OB.seekg(0,OB.end);  int length = OB.tellg() ; OB.seekg(0,OB.beg);

    char* STREAM = new char[length];
    OB.read(STREAM,length);
    OB.close();

    char *t,dump[20];
    int Number_Of_Vertices,Number_Of_faces;



    t = strstr(STREAM,"vertices");
    sscanf(&STREAM[&t[0]-&STREAM[0]-10],"%s # %i vertices",&dump,&Number_Of_Vertices);
    printf("\nthere are %i vertices",Number_Of_Vertices);

    t = strstr(STREAM,"faces");
    sscanf(&STREAM[&t[0]-&STREAM[0]-10],"%s # %i faces",&dump,&Number_Of_faces);
    printf("\nthere are %i faces",Number_Of_faces); 

 ......
Run Code Online (Sandbox Code Playgroud)

当我通过加载obj文件测试它时,它正确打开.但是我不明白第一个论点sscanf(),即:&STREAM[&t[0]-&STREAM[0]-10].请解释它是如何工作的?

c++

0
推荐指数
1
解决办法
75
查看次数

标签 统计

c++ ×2

c++11 ×1

struct ×1