第09天C语言(14):结构体-类型作用域
第09天C语言(14):结构体-类型作用域
lyh2017iOS 发表于8个月前
第09天C语言(14):结构体-类型作用域
  • 发表于 8个月前
  • 阅读 0
  • 收藏 0
  • 点赞 0
  • 评论 0

新睿云服务器60天免费使用,快来体验!>>>   

#pragma mark 结构体-类型作用域 ###pragma mark 概念

###pragma mark 代码

#include <stdio.h>
void text();
// 如果将变量写道函数 或者代码块外面, 那么就不是局部变量, 而是全局变量
// 全局变量的作用域 是从定义的那一行开始, 直到文件末尾 (暂时这样理解)

// 如果将结构体类型 写在 函数 或者 代码块外面 , 那么结构体类型的作用域和全部变量一样,从定义的那一行开始 一直直到文件末尾
// 相同作用域 不能 有同名的结构体类型
struct Person
{
    int age;
    char *name;
    double height;
};

int num;
int main()
{
    num = 10;
    struct Person p1;
    return 0;
}
void text()
{
    num  = 20;
    struct Person p2;
}

/*
void demo()
{
    struct Person
    {
        int age;
        char *name;
        double height;
    };
    
    int num = 10;
    // 代码块
    {
        struct Dog
        {
            int age;
            char *name;
        };
        struct Dog sd;
        
        // 局部变量 , 在不同的作用域中 可以 有同名的变量, 如果访问采用就近原则
        int num = 50;
        printf("num = %i\n",num);
        
        // 在不同的作用域中 可以定义同名的结构体类型, 如果使用同名的结构体类型 定义结构体变量, 采用就近原则
        struct Person
        {
            int age;
            char *name;
            double height;
        };
        struct Person sp = {24,"lyh",1.75};
    }
    
    //    num = 55;
    //    struct Dog sd1;
    
    
    struct Person sp;
}

void text()
{
    // 1. 如果结构体定义再函数 或 代码块中, 那么结构体类型的作用域和变量的作用域一样, 从定义的那一行开始,一只到函数结束或者代码块结束
    
//    struct Person sp;

}
*/

标签: C语言
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 1
博文 354
码字总数 137380
×
lyh2017iOS
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: