当前位置: 首页 > news >正文

哈尔滨门户网站设计报价qq刷赞网站推广

哈尔滨门户网站设计报价,qq刷赞网站推广,网站建设主结构,南京医院网站建设//柔性数组 //定义:结构体最后一个成员允许是未知大小的数组 // 优点;在开辟空间时,连续开辟,便于释放空间,不会因多次开辟,导致释放空间出错 // 开辟空间时,节省动态开辟次数,节省空间&am…

//柔性数组
//定义:结构体最后一个成员允许是未知大小的数组
// 优点;在开辟空间时,连续开辟,便于释放空间,不会因多次开辟,导致释放空间出错
//      开辟空间时,节省动态开辟次数,节省空间,提升内存空间利用率,减少内存碎片
//      访问效率更高
// 
//

struct S
{
    int n;
    int* arr;//指针大小随系统 4/8 个字节

};
int main()
{
    struct S* ps = (struct S*)malloc(sizeof(struct S));
    ps->arr = (int*)malloc(5 * sizeof(int));//给指针arr单独开辟一个空间
    int i = 0;
    for (i = 0; i < 5; i++)
    {
        ps->arr[i] = i;
    }
    for (i = 0; i < 5; i++)
    {
        printf("%d ", ps->arr[i]);
    }
    //调整大小
    int* ptr = (int*)realloc(ps->arr, 10 * sizeof(int));
    if (ptr != NULL)
    {
        ps->arr = ptr;
    }
    for (i = 5; i < 10; i++)
    {
        ps->arr[i] = i;
    }
    for (i = 0; i < 10; i++)
    {
        printf("%d ", ps->arr[i]);
    }
    //释放
    free(ps->arr);//先释放指针内的指针指向的空间
    ps->arr = NULL;
    free(ps);//再释放指针
    ps = NULL;
    return 0;
}

struct s
{
    int n;//柔性数组成员前必须至少有一个其他成员
    int arr[];//柔性数组成员,大小可以调整,计算sizeof时不算在内的,用malloc来分配其大小
};
int main()
{
    struct s* ps = (struct s*)malloc(sizeof(struct s) + 5 * sizeof(int));//24个字节的空间
    //struct s 的大小为4个字节,剩余的20个字节分配给柔性数组成员,连续开辟的空间
    ps->n = 100;
    int i = 0;
    for (i = 0; i < 5; i++)
    {
        ps->arr[i] = i;//0 1 2 3 4
    }
    struct s* ptr = (struct s*)realloc(ps, 44);
    if (ptr != NULL)
    {
        ps = ptr;
    }
    for (i = 5; i < 10; i++)
    {
        ps->arr[i] = i;
    }
    for (i = 0; i < 10; i++)
    {
        printf("%d ", ps->arr[i]);
    }
    //释放
    free(ps);
    ps = NULL;

    return 0;
}
void getmemory(char* p)
void getmemory(char** p)
{
    *p = (char*)malloc(100);
    //p = (char*)malloc(100);//没有free 形参p开辟的动态空间,且无法找到,导致内存泄漏
}
void test(void)
{
    char* str = NULL;
    //getmemory(str);//此时传的是值,p不能改变str的内容
    getmemory(&str);
    strcpy(str, "hello world");//此时拷贝指向的是空指针,解引用NULL,拷贝失败,程序崩溃
    printf(str);
    free(str);
    str = NULL;
}
char* getmemory(void)
{
    char p[] = "hello world";
    return p;//返回栈空间地址,内容已销毁
}
void test(void)
{
    char* str = NULL;
    str = getmemory();
    printf(str);
}
int main()
{
    test();
    return 0;
}

http://www.15wanjia.com/news/9717.html

相关文章:

  • 网站切换语言怎么做百度搜索关键词排名优化推广
  • 企业网站搭建的优点网站的seo方案
  • 网站收录什么意思下载app到手机上并安装
  • 网站的专题怎么做seo为什么要进行外部优化
  • 尚海整装为啥口碑那么差免费seo教程资源
  • 红酒网站建设策划书真正免费建站
  • 专门做运动装备的网站百色seo快速排名
  • 高端品牌网站建设(杭州)上海公司排名
  • 做封面哪个网站好百度搜索推广平台
  • 网站建设公司上海做网站公司头条搜索
  • linux做网站教程阐述网络推广的主要方法
  • 凡科做的网站不能被收录石家庄seo网站管理
  • 东莞企业营销型网站建设品牌网络seo方案外包
  • 小游戏网站怎么做武汉seo 网络推广
  • wordpress亮相关键词快速优化排名软件
  • 长沙好的网站建设公司最新的疫情防控政策和管理措施
  • 什么是权重高的网站公司seo是什么职位
  • 买了云服务器怎么做网站查关键词热度的网站
  • 免费网站建设排行表国家重大新闻
  • 物流网站首页图片成都seo
  • 崇礼做网站的公司seo自动工具
  • wordpress域名访问东莞优化网站制作
  • 个体户能否从事网站建设软文推广发布
  • 找i满洲做卖房广告不收费的网站常见的网络推广方式有哪些
  • 龙之向导外贸官方网站魔贝课凡seo课程好吗
  • 中文旅游网站html模板辽源seo
  • 自己怎么做电影网站seo下载站
  • 如何在腾讯云上网站建设宁波关键词排名优化
  • 免费推广做产品的网站手机百度搜索app
  • github部署wordpress独立站seo推广