c语言学习笔记四

结构体


 复合类型和结构体


  复合类型:
    示例代码:
     struct test_sturuct{
int x,y;
     }
     如果用这种复合类型来定义变量:
       示例代码:
         struct test_sturuct{
  int x,y;
         }z1,z2;
 
    定义访问结构体:
     #include<stdio.h>
      int main(void){
struct test_sturuct{
  int x,y;
         }z;
         int x=3;
  z.x=x;
         z.y=4;
         printf("z=%f%f",z.x,z.y);
  return 0;
      }
   注:如果未指定成员则用0 来初始化,不能给结构体赋值,结构体之间可以赋值
 


数所抽像
  示例代码:
     #include <stdio.h>
      struct test_struct{
  double x,y;
      };
      double part1(struct test_struct z){
  return z.x;
      }
        double part2(struct test_struct z){
  return z.y;
      }


数据类型标志
嵌套结构体
  示例代码;
   struct segment{
  struct test_struct start;
struct test_sttuct end;
   }






数组
也是一种复合数据类型,由一系列相同类型的元素组成
  示例代码:
   int count[4];
数组的长度由常量表达式来指定,上面定义的数组占4 个int型的存储单元
访问数组可以用指定下标的方式:
  count[0];
注数组之间不能赋值和初始化


 示例代码:
   #include <stdio.h>
    int a[N];
    void gen_random(int upper_bound){
int i;
for(){
   a[i]=rand()%upper_bound;
        }
    }
    void print_random(){
  int i;
for(i=0;i<N;i++){
  printf("%d",a[i]);
         }
printf("\n");
    }
    int main(void){
getn_random(100);
print_random();
    return 0;
    }
   
宏定义: #define TEST 2




多维数组
 示例代码:int x[3][4]={1,2,3,4,5,6,7,8,9,11,12,13};
   也可以这样初始化:int x[][2]={{1,2},{3,4},{5,}};


 
编码风格
 1 if/while/for与括号之间可以有一个空格 
 2 双目运算符两侧可加空格,单目不可以
 3 后缀和操作数之间不能有空格
 4 ,/;后要加空格
 5 折行
 6 字符串分行不用+
 7 switch中的case和default不要缩进
 8 代码段和函数间可以用空行




注释
 多行注释
   /*
    *
    */


indent工具
  $indent -kr -18 文件名
  
posted @ 2012-09-16 13:59  retacn_yue  阅读(118)  评论(0编辑  收藏  举报