夏天南京的凉菜要乘凉吃

来源:互联网 发布:慧凡云课堂软件下载 编辑:程序博客网 时间:2024/04/27 20:15

                夏天南京的凉菜要乘凉吃

  南京是中国四大火炉城市之一,夏天据说很热很热,这是我在南京的第一个暑假,有个说法夏天南京的凉菜要乘凉吃,否则时间长了会变成热菜。其实这几天的实训也是,我们所学的东西要及时总结回顾,要不然就会彻底淡忘,上午学的知识点吃了个饭就忘掉了。幸好晚上回来写写心得回顾才有所记忆。

  今天的收获还挺多的,主要知识点有:

关键字:(1union

v     当多个基本数据类型或复合数据结构要占用同一片内存时,我们要使用联合体;

v     当多种类型,多个对象,多个事物只取其一时(我们姑且通俗地称其为“n1”),我们也可以使用联合体来发挥其长处;

2enum

枚举类型声明代表常量的符号名称。

enum的默认值

  enum kids{nippy, slats, skippy, nina ,liz};

enum的指定值为0,1,2,3,4

  enum levels {low=100,medium=500,high=2000};

enum的用法

  其多作为switch的标签。

3typedef

v     typedefC语言的关键字,其作用是为一种数据类型定义一个新名字

v     格式:typedef 数据类型 自定义数据类型

v     typedef unsigned long uint32

v     在嵌入式的开发中,由于涉及到移植问题,typedef的功能就更引人注目了。

4-#define

定义常量与命令(避免幻数)

#define MAX 100

#define SIZE 1024

#define LOGIN_SUCCESS  1

#define LOGIN_FAIL     0

其优点是节省编译时间。

基本语句:(1 if 语句

     if 语句是C语言中最简单、最常用的语句,然而很多程序员用隐含错误的方式写if语句。如: if(a);if没有else;

(2) while语句

其表示方法:while(a)

            {

                        }

(3) for语句

  其表示方法:for(表达式1;表达式2;表达式3)

4switch语句

v    switch语句可以产生具有多个分支的控制流程。

  它的格式是:

     switch(控制表达式)

    {

        case常量表达式:语句列表

        case常量表达式:语句列表

         ...

       default:语句列表

    }

其中:

v    每个case语句的结尾不要忘了加break,否则将导致多个分支重叠(除非有意使多个分支重叠);

v    不要忘记最后那个default分支。即使程序真的不需要default处理,也应该保留语句 default : break;这样做并非多此一举,而是为了防止别人误以为你忘了default处理。

5break语句和continune语句

Break语句用于跳出循环体,常在while语句和for语句中。 

 Countinue语句在满足条件时继续向上判断。

6goto语句

goto语句可以灵活跳转,如果不加限制,它的确会破坏结构化设计风格。其次,goto语句经常带来错误或隐患。它可能跳过了某些对象的构造、变量的初始化、重要的计

算等语句,因此该语句要谨慎使用。

v         命令行参数:int main(int argc, char *argv[]);

 argc: 参数的个数

 argv存放参数的指针数组 

 下午主要学习了位运算-位操作符

 如:&与运算

|或运算

ˆ安位异或运算

》《移位运算

下午练习:输入一个32位的整数a,使用按位异或^运算,生成一个新的32位整数b,使得该整数b的每一位等于原整数a中该位左右两边两个bit位的异或结果。

#include <stdio.h>

 

int main()

{

   unsigned int a;

   

int b[32],ai[32],i;

 

  scanf("%d",&a);

 

 

  for(i=0;i<32;i++)

    

 {

      b[i]=0;

     }

 

 

   while(a)

 

 {

     b[i-1]=a&1;

  a=a>>1;

  i--;

 }

 

 

   for(i=0;i<32;i++)

    

{

      printf("%d",b[i]);

 }

 

    printf("\n");

 

   

 ai[31]=b[31];

    

for(i=1;i<31;i++)

 

{

  ai[i]=b[i-1]^b[i+1];

    }

   

 for(i=0;i<32;i++)

   

{ printf("%d",ai[i]); }

   

 

   printf("\n");

  

   return 0;

    

}

除此之外还行学习了一些软件编程规范规则:

1-1:程序块要采用缩进风格编写,缩进的空格数为4个。

说明:对于由开发工具自动生成的代码可以有不一致。

1-2:相对独立的程序块之间、变量说明之后必须加空行。

 

1-3:较长的语句(>80字符)要分成多行书写,长表达式要在低优先级操作符处划分新行,操作符放在新行之首,划分出的新行要进行适当的缩进,使排版整齐,语句可读。

1-4:循环、判断等语句中若有较长的表达式或语句,则要进行适应的划分,长表达式要在低优先级操作符处划分新行,操作符放在新行之首。

1-5:若函数或过程中的参数较长,则要进行适当的划分

1-6:不允许把多个短语句写在一行中,即一行只写一条语句

1-7iffordowhilecaseswitchdefault等语句自占一行,且iffordowhile等语句的执行语句部分无论多少都要加括号{}

1-8:对齐只使用空格键,不使用TAB键。

1-9:函数或过程的开始、结构的定义及循环、判断等语句中的代码都要采用缩进风格,case语句下的情况处理语句也要遵从语句缩进要求。

1-10:程序块的分界符(如C/C++语言的大括号‘{’和‘}’)应各独占一行并且位于同一列,同时与引用它们的语句左对齐。在函数体的开始、类的定义、结构的定义、枚举的定义以及iffordowhileswitchcase语句中的程序都要采用如上的缩进方式

1-11:在两个以上的关键字、变量、常量进行对等操作时,它们之间的操作符之前、之后或者前后要加空格;进行非对等操作时,如果是关系密切的立即操作符(如->),后不应加空格。

1-12:说明性文件(如头文件.h文件、.inc文件、.def文件、编译说明文件.cfg等)头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其它文件的关系、修改日志等,头文件的注释中还应有函数功能简要说明。

  这些都是我们这些未经过正规训练,以及行外人所未注意的,总之收获挺大的。