84819

Linux C学习day2

一、数据类型

 1.整形

  int a = 5;  //定义一个整形变量a,并初始化值为5,4个字节

  unsigned int b;  //无符号整形,4个字节

  short int c;  //短整形,2个字节,可以写成  short c;

  long int d;  //长整形,8个字节,可以写成  long c;

  long long int e;  //长长整形,16个字节

  

  //打印数据类型在系统中占用内存大小

  printf("%d\n",sizeof(int));

 2.字符型,是单字节整形,其实char a = 'a'; 对应的ASCII码

  char a = 'a';

  //输出字符  

  printf("%c\n",a);

 3.浮点型

  float a = 3.14;  

  double b = 6.18;

 4.可移植数据类型

  为了系统兼容性,内核经常使用可移植数据类型

  #typedef int u32_t;

  

 5.字符串,c语言没有字符串这种数据类型

  char a[4] = "abcd";

  char *p = "efgh";

  printf("%s\n",b);

  printf("%s\n",p);

 printf()输出格式

  %d  int

  %10d  打印输出占用10个格

  %-10d  打印输出占用10个格,左定格

  %u  unsigned int

  %lu  unsigned long 

  %lld  long long int

  %c  char

  %f  float

  %.2f  float, 保留两位小数

  %lf  double

  %Lf  long double

  %e  科学记数法

  %x  16进制

  %o  8进制

  %p  地址

  %s   字符串

  scanf();同上

 算术运算符

  +  加  

  -  减  

  *  乘

  /  除

  %  取余

  ++  自增1

  --  自减1

  a++;  //先取值后自增1

  ++a;  //先自增1后取值

  a--;  //先取值后自减1

  --a;  //先自减1后取值

 例:

  假设  a=1; b=2; c=3; d=4;

  y = a++;  //先取值y=a = 1,  后自增1,a的值最后为2;

  y = ++b;  //先自增1,  b的值为2自增1后为3,后取值y = 3;

  y = c--;  //先取值y=c = 3,  后自减1,c的值最后为2;

  y = --d;  //先自减1,  d的值为4自减1后为3,后取值y = 3;

 三目运算符: (目:目标)

  a>b ? a : b 若a>b为真,则选择问号后第一个表达式,即a

        否则,选择冒号后的表达式,即b

来源:博客园

作者:bangjie

链接:https://www.cnblogs.com/bangjie/p/11426167.html

Recommend