【C语言航路】第一站:初识C语言(一)

简介: 【C语言航路】第一站:初识C语言(一)

一、第一个c语言程序

1.下面这是第一个c语言程序:

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main()
{
  printf("hello world");
  printf("hehe");
  return 0;
}

详解代码:

①main称作主函数,主函数是程序的入口,C语言代码中必须有主函数,但有且仅有一个主函数。一个工程(项目)中可以有多个.c文件,但是多个.c文件中有且仅有一个主函数

②include 是包含的意思,上面所示的代码就是包含stdio.h这个头文件

③stdio即standard input output 意思是标准输入输出头文件

④int是整型,即整数的意思

⑤printf是打印函数,专门用来在屏幕上打印数据的,是c语言标准库中提供的一个库函数。

⑥第一行的代码将放在后文中详细讲解

2.几种不常见的,但是正确的main函数写法

①如下面代码所示,main函数前变成了void,这种写法在很多比较老的书中很常见,这种写法是正确的,但是比较古老,不推荐这样写

#include<stdio.h>
void main() {
  return 0;
}

②这个写法中,main函数的括号中带了一堆奇怪的参数,这个写法也是正确的,但此处将会放到后面的文章中会详细讲解,读者暂时无须理解。

int main(int argc, char* argv[])
{
     return 0;
}

③这个写法代表,main函数中不需要参数,也是正确的写法,但是并不常见。

#include<stdio.h>
int main(void) {
  return 0;
}

3.下面是几个经典的错误,标准的零分

①第一个经典错误:违背了一.1.①的原则,同一个c语言代码中出现了多个main函数,或者同一个工程(项目)中出现了多个main函数。

注意看,这两张图中有两个.c文件,他们之中都出现了主函数,那此时就是一个经典的错误,标准的零分。如下图所示为运行结果(报错结果)。visual studio按住crtl+f5,即可运行程序。

②第二个经典错误:main函数后面的括号写成了{},[],《》等等,注意一定是()

③第三个经典错误:每行结尾后没有加";"或者说中文的分号与英文符号搞混,注意,程序之中,每条语句结束后是要有分号的,并且程序中的所有符号均为英文模式,而非中文模式。

④第四个经典错误:使用printf,scanf等函数未使用头文件include<stdio.h>

二、数据类型

1.都有哪些数据类型

char           //字符数据类型

short          //短整型

int              //整型

long           //长整型

long long   //更长的整型

float           //单精度浮点数

double       //双精度浮点数

这是一些c语言中的数据类型。共有一种字符类型,四种整型,两种浮点型。

字符用字符类型表示,整数用整型表示,小数用浮点型表示。

2.这些类型都需要多大空间?

首先要认识一个操作符sizeof(),这个操作符的作用是计算括号里面数据类型的大小

这个大小的单位是字节。

下面给出计算机的常见单位。

bit      比特

byte   字节

KB

MB

GB

TB

PB

1byte==8bit

1KB==1024byte

1MB==1024KB

1GB==1024MB

1TB==1024GB

1PB==1024TB

#include <stdio.h>
int main()
{
  printf("%d\n", sizeof(char));
  printf("%d\n", sizeof(short));
  printf("%d\n", sizeof(int));
  printf("%d\n", sizeof(long));
  printf("%d\n", sizeof(long long));
  printf("%d\n", sizeof(float));
  printf("%d\n", sizeof(double));
  printf("%d\n", sizeof(long double));
  return 0;
}

下面给出这些计算结果

可见

char为1个字节

short为2个字节

int为4个字节

long为4个字节

long long为8个字节

float为4个字节

double为8个字节

long double为8个字节

有些人可能有疑问,为什么我的long是八个字节呢,其实c语言中并没有明确规定long的字节数

但有以下等式成立

sizeof(long)>=sizeof(int)

3.为什么要四种整型呢?

为了合理利用空间

注意:存在这么多的类型,其实是为了更加丰富的表达生活中的各种值。

4.类型的使用

char ch='w';

printf("%c",ch);

int weight=120;

int salary=20000;

注意:使用浮点类型时候,一般默认为double类型,如想用float类型,可以在小数后面加一个f

float a=3.14f;


总结

本节主要讲述了第一个c语言程序以及注意事项,数据类型的详解。

本站未完,欲知后事,请看下节。

相关文章
|
6月前
|
编译器 Linux C语言
【C语言航路】第十五站:程序环境和预处理(下)
【C语言航路】第十五站:程序环境和预处理(上)
41 0
|
6月前
|
存储 自然语言处理 编译器
【C语言航路】第十五站:程序环境和预处理(上)
【C语言航路】第十五站:程序环境和预处理
43 0
|
6月前
|
存储 编译器 C语言
【C语言航路】第十四站:文件(下)
【C语言航路】第十四站:文件
42 0
|
6月前
|
存储 编译器 数据库
【C语言航路】第十四站:文件(上)
【C语言航路】第十四站:文件
37 0
|
6月前
|
程序员 C语言 C++
【C语言航路】第十三站:动态内存管理(下)
【C语言航路】第十三站:动态内存管理
35 0
|
6月前
|
编译器 C语言
【C语言航路】第十三站:动态内存管理(上)
【C语言航路】第十三站:动态内存管理
50 0
|
6月前
|
编译器 Linux C语言
【C语言航路】第十二站:自定义类型:结构体、枚举、联合体
【C语言航路】第十二站:自定义类型:结构体、枚举、联合体
41 0
|
6月前
|
存储 编译器 C语言
【C语言航路】第十一站:字符串、字符和内存函数(下)
【C语言航路】第十一站:字符串、字符和内存函数
52 0
|
6月前
|
算法 安全 编译器
【C语言航路】第十一站:字符串、字符和内存函数(中)
【C语言航路】第十一站:字符串、字符和内存函数
57 0
|
6月前
|
IDE 开发工具 C语言
【C语言航路】第十一站:字符串、字符和内存函数(上)
【C语言航路】第十一站:字符串、字符和内存函数
34 0