使用结构的成员作为验证

时间:2017-06-25 17:16:31

标签: c excel

我必须从excel文件中读取列,以便我可以输出它的统计信息。我认为要做到这一点,我必须首先创建一个struct。这就是我到目前为止所做的一切。

#include <stdio.h>
#include <stdlib.h>


    /* Structure to store all the data that is required */
    typedef struct{
        char* id;
        int entryCount;
        int like;
        char gender[7];
    } statistics;

excel文件是facebook的列表,包括计数和成员名称,ID和性别。我的问题是,如何使用if语句验证数据,并确定相似的计数是否属于malefemale性别?

任何帮助都将不胜感激。

编辑:让问题更清晰(我希望)。

1 个答案:

答案 0 :(得分:1)

制作if用于比较字符串(实际上是字符数组,以'\0'结尾)的方法是使用正确的函数来完成作业。

以下是使用strncmp(...)的示例。

#include <stdio.h>
#include <stdlib.h>
#include <string.h>


/* Structure to store all the data that is required */
typedef struct{
    char* id;
    int entryCount;
    int like;
    char gender[7];
} statistics;

int main(void)
{
    statistics ExampleMale={"1", 2, 0, "male"};
    statistics ExampleFemale={"0", 1, 0, "female"};

    // Whatever you do to fill your structs is simulated by init above.
    if(strncmp(ExampleMale.gender,"male", 7))
    {
        printf("Male looks female.\n");
    } else
    {
        printf("Male looks male.\n");           
    }

    if(strncmp(ExampleFemale.gender,"female",7))
    {
        printf("Female looks male.\n");
    } else
    {
        printf("Female looks female.\n");           
    }

    return 0;

}

输出:

Male looks male.
Female looks female.

我建议进行实验,以便学习。
例如,尝试将结构中的字符串更改为“Female”和“Male” 在这种情况下,我制作代码的方式将具有启发性的结果。 :-)
(致Idlle001的信用)