当前位置: 首页 > news >正文

C语言学习小结(1)——初认识C语言

一、C语言概念

        C语言是一门通用计算机编程语言,广泛应用于底层开发。C语言的设计目标是提供一种能以简易 的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。二十世纪八十年代,为了避免各开发厂商用的C语言语法产生差异,由美国国家标准局C语言制定了一套完整的美国国家标准语法,称为ANSI C,作为C语言最初的标准。 目前2011128日,国际标准化组织(ISO)和国际电工委员会(IEC)发布的C11标准C语言的第三个官方标准,也是C语言的最新标准,该标准更好的支持了汉字函数名和汉字标识符,一定程度上实现了汉字编程。

        C语言是一门面向过程的计算机编程语言,与C++Java等面向对象的编程语言有所不同。
其编译器主要有ClangGCCWIN-TCSUBLIMEMSVCTurbo C等。

二、数据类型

1、类型

数据类型
char字符数据类型%c1字节
short短整型%s2字节
int(ubsigned)整形(无符号整型)%d(%u)4字节
long长整型%d4字节
long long更长整型%d8字节
float单精度浮点数%f4字节
double双精度浮点数%lf8字节

2、常量与变量

(1)、常量

         定义:不能改变的量。

常见常量:

  1. 字面常量(3.14)
  2. const 修饰的常变量(const char a = 1;)
  3. #define 定义的标识符常量(#define SE 4)
  4. 枚举常量(enum)

(2)、变量

        除了常量都是变量。

补:局部变量与全局变量(局部变量优先,但是建议不要使用同一个名称变量)

三、字符串+转义字符+注释

1、字符串

        char a[] = "hello";

        注:字符串的结束标志是'\0'的转义字符。在计算字符串长度时,'\0'是结束的标志,不算在字符串的内容里。

 示例:

int mian()
{char arr[] = "hello";printf("%d\n",sizefo(arr));//5return 0;
}

2、转义字符

        

转义字符
释义
\?
在书写连续多个问号时使用,防止他们被解析成三字母词
\'
用于表示字符常量'
\“
用于表示一个字符串内部的双引号
\\
用于表示一个反斜杠,防止它被解释为一个转义序列符
\a
警告字符,蜂鸣
\b
退格符
\f
进纸符
\n换行
\r回车
\t水平制表符
\v垂直制表符
\ddd
ddd表示1~3个八进制的数字。 如: \130 X
\xdd
dd表示2个十六进制数字。 如: \x30 0

3、注释

        \\表示注释

示例

#define KEY 100\\表示标识符常量KEY的值为100

四、常见的C语言语句

1、选择语句(if)

int a = 0;
scanf("%d",&a);
if (0 == a)
{printf("%c\n","hello");
}
else if (1 == a)
{printf("%c\n","world");
}
else
{printf("%c\n","您好");
}

2、循环语句

  •         while
    int a = 0;
    while (10 > a)
    {printf("%d\n",a);a++;
    }
  • for
    int a = 0;
    for (a = 0;a < 10;a++)
    {printf("%d\n",a);
    }
  • do...whlie
  • int a = 0;
    do{printf("%d\n",a);a++;
    }while(a<10);

 3、函数

int Add(int x,int y)
{int z = 0;z = x + y;return z;
}int main()
{int a = 10;int b = 20;int c = Add(a,b);\\c=30return 0;
}

4、数组

int arr[10] = {1,2,3,4,5,6,7,8,9,10};
char ch[5] = {'a','b','c'}\\其余的0填充

5、操作符

单目操作符 

 

 逗号表达式

         exp1, exp2, exp3, …expN(依次计算,输出最后的结果)

下标引用、函数调用和结构成员
[]    ()   .     ->

 6、常见关键字

auto  break   case  char  const   continue  default  do   double else  enum  

extern float  for   goto  if   int   long  register    return   short  signed
sizeof   static struct  switch  typedef union  unsigned   void  volatile  while

(1)、typedef 顾名思义是类型定义,这里应该理解为类型重命名。

(2)、static

static是用来修饰变量和函数的
        1. 修饰局部变量-称为静态局部变量
        2. 修饰全局变量-称为静态全局变量
        3. 修饰函数-称为静态函数
void test()
{//static修饰局部变量static int i = 0;i++;printf("%d ", i);
}
int main()
{int i = 0;for (i = 0; i < 10; i++){test();}return 0;
}

注:1、static修饰局部变量改变了变量的生命周期,让静态局部变量出了作用域依然存在,到程序结束,生命周期才结束。
        2、一个全局变量被static修饰,使得这个全局变量只能在本源文件内使用,不能在其他源文件内使用。

 (3)、define 定义常量与宏

#define Max 100
#define ADD(x,y) ((x)+(y))

7、指针(非常重要)

        后面将会详细讲述。

8、结构体

struct stu
{char name[10];int age;
}
int main()
{struct stu zlc = { "张三",20 };printf("%c %d\n",zlc.name,zlc.age);struct stu *z = &zlc;printf("%c %d\n",z->name,z->age);printf("%c %d\n",(*z).name,(*z).age);return 0;
}

五、总结

        要想学习好C语言,自己还有很长的路需要走。因此,每一个初学C语言的人都应该每天做完自己安排的任务:

        1、15道编程基础选择题。

        2、2-3道编程题(具体看难度)。

        3、定期写一篇博客。

        4、温故知新。

http://www.lryc.cn/news/3873.html

相关文章:

  • 30分钟吃掉wandb可视化自动调参
  • 【8】AMBA_SOC项目自学IC验证项目-仿真平台脚本使用讲解
  • 智慧水务未来技术发展方向预测探讨
  • 数据结构 | 栈与队列
  • Redux 源码分析
  • 第五十二章 BFS进阶(二)——双向广搜
  • 业务建模题
  • 电子秤专用模拟数字(AD)转换器芯片HX711介绍
  • 微服务 RocketMQ-延时消息 消息过滤 管控台搜索问题
  • js发送邮件(node.js)
  • English Learning - Day58 一周高频问题汇总 2023.2.12 周日
  • 【微电网】基于风光储能和需求响应的微电网日前经济调度(Python代码实现)
  • 四种方式的MySQL安装
  • 软考高级信息系统项目管理师系列之九:项目范围管理
  • 【项目精选】javaEE健康管理系统(论文+开题报告+答辩PPT+源代码+数据库+讲解视频)
  • ctfshow nodejs
  • 无线传感器原理及方法|重点理论知识|2021年19级|期末考试
  • 带你写出符合 Promise/A+ 规范 Promise 的源码
  • 回流与重绘
  • openpyxl表格的简单实用
  • 【寒假day4】leetcode刷题
  • 【竞赛题】6355. 统计公平数对的数目
  • Redis集群搭建(主从、哨兵、分片)
  • Dart语法基础补充
  • Nginx - 深入理解nginx的处理请求、进程关系和配置文件重载
  • 华为OD机试 - 服务依赖(Python)| 真题含思路
  • html的表单标签(form)
  • 手把手教你部署ruoyi前后端分离版本
  • JUC并发编程 Ⅱ -- 共享模型之管程(上)
  • File类