带你学C带你飞(1)

小甲鱼C语言系列课程笔记,共61个视频,每6个视频总结一次笔记,预计10篇。

https://www.bilibili.com/video/BV17s411N78s

Hello world!

每个编程语言的学习,都从Hello world开始!

1
2
3
4
5
6
#include <stdio.h>

int main(){
printf("Hello world!\n");
return 0;
}

宏定义

类似于Python中的常量,# 表示预处理,也就是说在编译的时候,所有的 URL 都被换成 "http://www.fishc.com" ,后面无法改变它的值。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>

#define URL "http://www.fishc.com"
#define NAME "鱼C工作室"
#define BOSS "小甲鱼"
#define YEAR 2010
#define MONTH 5
#define DAY 20

int main(){
printf("%s成立于%d年%d月%d日\n", NAME, YEAR, MONTH, DAY);
printf("%s是%s创立的……\n", NAME, BOSS);
printf("%s的域名是%s\n", NAME, URL);
return 0;
}

数据类型

C语言数据类型

  • 整数类型 short int int long int long long int
  • 浮点数类型 float double
  • 字符类型 char
  • 布尔类型 _Bool
  • 枚举类型 enum

sizeof 运算符

sizeof运算符用于获得数据类型或表达式的长度

1
2
3
sizeof(object)
sizeof(type-name)
sizeof object

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <stdio.h>

int main(){
int i;
char j;
float k;

i = 123;
j = 'c';
k = 3.14;

printf("size of int is %d\n", sizeof(int));
printf("size of i is %d\n", sizeof(i));
printf("size of char is %d\n", sizeof(char));
printf("size of j is %d\n", sizeof j);
printf("size of float is %d\n", sizeof(float));
printf("size of k is %d\n", sizeof k);

return 0;
}

signedunsigned

通俗讲,signed 表示带符号,即可以存放负数;unsigned 不带符号,不可存放负数。

  • [signed] short [int]
  • unsigned short [int]
  • [signed] int
  • unsigned int
  • [signed] long [int]
  • unsigned long [int]
  • [signed] long long [int]
  • unsigned long long [int]

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>

int main(){
short i;
unsigned short j;

i = -1;
j = -1;

printf("%d\n", i);
printf("%u\n", j); //打印无符号用%u

return 0;
}