热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

入门C语言——初识C语言(1)

一、引言本系列文章主要内容主要是我对C语言的初步认识以及知识小结。二、GET到的知识1、main()函数:main()函数作为程序的入口在整个工程中有且只能存在一个。并且main(

一、引言
本系列文章主要内容主要是我对C语言的初步认识以及知识小结。
二、GET到的知识
1、main()函数:
main()函数作为程序的入口在整个工程中有且只能存在一个。并且main()函数括号内部是允许有参数的。

2、数据类型:

数据类型占用空间(byte)
char1
short2
int4
long4
long long8
florat4
double8

多种的数据类型是为了方便处理生活中不同种类的值。当我们在选择数据类型时如果知道目标值的大致范围,最好使用对应的数据类型,这样既可以节省内存也可以避免出错。

3、变量:
(1)定义变量的方法:
数据类型(空格)变量名称=值
(2)变量的作用域和生命周期:

变量类型作用域生命周期
全局变量整个工程等于程序的生命周期
局部变量定义该变量的函数或语句中进作用域开始,出作用域结束

注意!
<1>全局变量可以和局部变量重名,但是程序运行时全局变量优先
<2>若要使用另一个源文件中的全局变量,应该使用extern进行声明

4、常量:

常量类型形式和解释
字面常量如π、e、g等生活中的常数
const修饰的常变量如const int a = 1,在这里a的值不可变,但是其本质是变量。例:int arr[a]={0}会报错,因为[ ]内应输入常量。
#define定义的标识常量形如: #define M = 1,M之后不可变
枚举常量通常用来列举一些数量较少的值,值不可变

枚举常量形式如下

#include
enum shape
{
fat,
slim
};

这里要注意的是结尾处要有 ; 否则会报错。

5、字符及字符串:
首先由双引号引起的是字符串字面值,由单引号引起的是字符。字符串结束的标志\0(转义字符),注意:\0是一个字符但是不算在字符串的长度里。如果一个字符串直到结尾都没有\0那么打印该字符串时将会出现乱值。有趣的时当\0出现在字符串中间时,打印结果中字符串会从\0处截断。如下:

#include
int main()
{
char ch[] = "abcdef";
char ch2[] = "abc\0def";
printf("%s\n%s\n", ch, ch2);
return 0;
}

结果
《入门C语言——初识C语言(1)》
6、转义字符:
首先来张转义字符表

转义字符解释
\?在书写连续多个问号时使用,防止他们被解释成三字母词
\‘用于表示字符常量’
\&#8221;&#8221;用于表示字符串内部的双引号
\\用于表示一个反斜杠,防止它被转义
\a警告字符
\b退格符
\f进纸符
\t水平制表符
\n换行符
\r回车符
\v垂直制表符
\dddddd表示1—3个八进制数字
\xdddd表示2个16进制数字

注意:<1>如果想不想让转义字符转义那么久在它前面加一个\,如\\n就表示字符’\\n’。
<2>当使用\ddd时请注意其中是否存在8或8以上的数字,如果有,那它和它后面的数字就不算在ddd之中。\xdd同理。

7、选择语句:
形式举例

int main()
{
int x = 1;
int y = 2;
if (x > y)
{
return x;
}
else
{
return y;
}
}

8、循环语句:
形式举例

int main()
{
int a = 0;
while (a <= 10)
{
printf("%d", a);
a++;
}
return 0;
}

9、函数:
形式举例

int func1(x, y)//创建比大小函数
{
int z = 0;
if(x>y)
{
z = x;
}
else
{
z = y;
}
return z;
}

函数的作用是为了重复实现某一功能从而简化代码。

10、数组:
形式举例

int arr[10] = { 1,2,3,4,5,6,7,8,9}

注意:<1>创建数组时[ ]应该输入常数。数组的下标是从零开始的。
<2>{}内元素个数不能超过数组大小

三、尾声
这两天的学习生活非常充实,学到了很多干货,当然本篇文章只是我对自身目前学到的知识的简单总结,很多地方都是简单一提,或多或少地可能有些错误,如果发现毛病的话欢迎评论区留言。如果你是和我一样的萌新,希望这篇文章对你有用,如果你、您是大佬,还请多多指教。


推荐阅读
  • Java中包装类的设计原因以及操作方法
    本文主要介绍了Java中设计包装类的原因以及操作方法。在Java中,除了对象类型,还有八大基本类型,为了将基本类型转换成对象,Java引入了包装类。文章通过介绍包装类的定义和实现,解答了为什么需要包装类的问题,并提供了简单易用的操作方法。通过本文的学习,读者可以更好地理解和应用Java中的包装类。 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 先看官方文档TheJavaTutorialshavebeenwrittenforJDK8.Examplesandpracticesdescribedinthispagedontta ... [详细]
  • 本文介绍了Swing组件的用法,重点讲解了图标接口的定义和创建方法。图标接口用来将图标与各种组件相关联,可以是简单的绘画或使用磁盘上的GIF格式图像。文章详细介绍了图标接口的属性和绘制方法,并给出了一个菱形图标的实现示例。该示例可以配置图标的尺寸、颜色和填充状态。 ... [详细]
  • 超级简单加解密工具的方案和功能
    本文介绍了一个超级简单的加解密工具的方案和功能。该工具可以读取文件头,并根据特定长度进行加密,加密后将加密部分写入源文件。同时,该工具也支持解密操作。加密和解密过程是可逆的。本文还提到了一些相关的功能和使用方法,并给出了Python代码示例。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 本文讨论了在VMWARE5.1的虚拟服务器Windows Server 2008R2上安装oracle 10g客户端时出现的问题,并提供了解决方法。错误日志显示了异常访问违例,通过分析日志中的问题帧,找到了解决问题的线索。文章详细介绍了解决方法,帮助读者顺利安装oracle 10g客户端。 ... [详细]
  • 本文介绍了C++中省略号类型和参数个数不确定函数参数的使用方法,并提供了一个范例。通过宏定义的方式,可以方便地处理不定参数的情况。文章中给出了具体的代码实现,并对代码进行了解释和说明。这对于需要处理不定参数的情况的程序员来说,是一个很有用的参考资料。 ... [详细]
  • WebSocket与Socket.io的理解
    WebSocketprotocol是HTML5一种新的协议。它的最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,是真正的双向平等对话,属于服务器推送 ... [详细]
  • 怎么在PHP项目中实现一个HTTP断点续传功能发布时间:2021-01-1916:26:06来源:亿速云阅读:96作者:Le ... [详细]
  • Redis底层数据结构之压缩列表的介绍及实现原理
    本文介绍了Redis底层数据结构之压缩列表的概念、实现原理以及使用场景。压缩列表是Redis为了节约内存而开发的一种顺序数据结构,由特殊编码的连续内存块组成。文章详细解释了压缩列表的构成和各个属性的含义,以及如何通过指针来计算表尾节点的地址。压缩列表适用于列表键和哈希键中只包含少量小整数值和短字符串的情况。通过使用压缩列表,可以有效减少内存占用,提升Redis的性能。 ... [详细]
  • 在Oracle11g以前版本中的的DataGuard物理备用数据库,可以以只读的方式打开数据库,但此时MediaRecovery利用日志进行数据同步的过 ... [详细]
  • 图像因存在错误而无法显示 ... [详细]
author-avatar
fedfedfv_249
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有