zoukankan      html  css  js  c++  java
  • 两个结构体变量的赋值

    #include "stdafx.h"
    #include <stdio.h>
    #include <string.h>
    #include <math.h>
    #include<stdlib.h>
    #include <dos.h>
    #include <conio.h>
    
    typedef struct __Base_Audio_Device
    {
    	int samplerate;
    	int bits;
    }Base_Audio_Device;
    
    
    typedef struct __Audio_Module
    {
    	Base_Audio_Device base_audio_device;
    	int Cards;
    }Audio_Module;
    
    static Audio_Module  Speaker_Audio_Module =
    {
    	{ 48000,16 },
    
    };
    
    int main()
    {
    	// 用法一:赋值 取值 
    	Base_Audio_Device base_audio_device = Speaker_Audio_Module.base_audio_device;
    	printf("base_audio_device  samplerate is %d
    ", base_audio_device.samplerate);
    	printf("base_audio_device  bits is %d
    ", base_audio_device.bits);
    	printf("base_audio_device  is %p 
    ", &base_audio_device);
    	printf("Speaker_Audio_Module.base_audio_device  is %p
    ", &(Speaker_Audio_Module.base_audio_device));
    	printf("-------------------------------------------------
    ");
    
    	// 不好的地方 两个变量是处于不同地址空间  即使空间内容一样  但是没有什么联系。。。
    	//  一个文件里面 经常是有要一个本文件的全局变量   操作这个变量 
    
    	// 解决:方法一:就是使用结构体指针 
    	// 事实上还是两个基本问题(1)值拷贝    (2)地址拷贝的问题  指向的是同一个地址空间
    	Base_Audio_Device* pbase_audio_device = &Speaker_Audio_Module.base_audio_device;
    	printf("samprate is %d
    ", pbase_audio_device->samplerate);
    	printf("bits  is %d
    ", pbase_audio_device->bits);
    	printf("-------------------------------------------------
    ");
    
    	while (1);
    
    	return 0;
    }


     

    一勤天下无难事。
  • 相关阅读:
    AtCoder ABC154 F
    题解 LA4390
    题解 LA4064
    题解 UVa11529
    【题解】洛谷 P6295 有标号 DAG 计数【生成函数 多项式】
    NOIP 2020 自闭记 暨 后期计划
    【CF246E】Blood Cousins Return【dsu on tree】
    【CF208E】Blood Cousins【dsu on tree】
    【CF570D】Tree Requests【dsu on tree】
    dsu on tree 学习笔记
  • 原文地址:https://www.cnblogs.com/nowroot/p/12840382.html
Copyright © 2011-2022 走看看