初识C语言—C语言常见概念

别再让OCV拖慢你的芯片!手把手教你用set_timing_derate优化STA时序(附CPPR实战) 本文深入探讨了芯片设计中OCV(On-Chip Variation)对时序分析的影响,并提供了使用`set_timing_derate`优化STA时序的实战指南。通过分阶段derate设置和CPPR技术,有效减少时序违例,提升芯片性能。文章结合TSMC 7nm工艺案例,详细解析了OCV建模与优化策略,助力工程师实现时序收敛。 阅读详情

本文概况

        创作这篇文章的主要目的是,让从未接触过电脑的小白,能够快速的了解C语言,理清学习一门计算机语言的思路,树立起一门语言意识,让读者能快速上手C语言。本文仅供读者参考,如果有错误的地方请多多指教,或者认为自己有更好的方法,非常欢迎大家在评论区里文明留言。另外,因为本人写作比较少,可能会出现语法错误,阅读起来不流畅,如果真的出现这种情况,还请读者多多包涵,当然我写完后尽量抽时间仔细比对两遍再发。


一、编译器的选择

        新手在学习C语言的过程中,最避不开的是代码风格养成,要养成好的代码习惯就必须要有一个好上手的编译器,所以对我们来说,选择好一款优质的编译器是非常重要的。如今市面上的编译器参差不齐,如果选了一款过时了、跟不上时代变化的编译器,到时找工作了到公司很有可能会出现难以适应的情况。

        在此我将列出本人比较推荐的编译器,供大家参考借鉴,希望大家结合自己电脑情况妥善选择。

windows用户

1.VS2022

        这款编译器可以说是Windows端所有编译器当中最全面的编译器,能够为用户提供更优质的服务,同时也是企业里用的最多的编译器。但缺点是功能太全,占用内存很高,如果电脑配置差,很可能运行不起来。如果你电脑配置比较高的话,非常推荐使用这款软件。另外,这款软件对新手并不是很友好,建议先去B站看看安装教程,再动手安装。这里推荐两个视频链接如下:

vs2022(Visual Studio 2022)权威指南&&C语言&&软件工程开发的方向&&技巧要领_哔哩哔哩_bilibili

VS2022安装使用教程,Visual Studio 2022详细安装使用调试教程C语言编译器,C++编译器_哔哩哔哩_bilibili

 第一个链接是弗兰克老师的安装和使用教程,视频时长比较长,内容比较全面,建议有时间的同学去看;然后第二个是比特鹏哥的安装视频教程,内容比较全面,也比较精简,只需要你一步一步跟着走就行。

2.Devc++

        这款工具上手比较简单,兼顾效率的同时又小巧、轻便,很适合新手入门,同时也是很多学校和竞赛电脑首选的编译器。但这款工具就使用起来太过简单了,很多功能都不够完善,所以用起来也会有诸多不便,对良好的代码风格养成也不好,请读者慎重选择。

苹果端

XCode-这款工具是苹果端笔记本最普遍实用的编译器,如果你是苹果用户建议你直接下这款软件,没必要再费心思找其他编译器了。


二、第一个C语言程序

安装完编译器之后就可以上手写代码了,以下是每位程序员入门都要写的第一串代码。

#include<stdio.h>
int main()
{
    printf("Hello world!\n");
    return 0;
}

运行结果如下图所示

输出结果是Hello world!

 如果你看不懂完全不知所云,我们先别着急,因为这很正常,没有人能一蹴而就,更没有人不学就会的。

下面我将带大家一起看看这些代码都说了什么内容。

1.#include

        #include--这是个预处理指令,相当于我们数学中的“解”,编译器会优先看这部分内容,并执行相应程序。另外预处理必须出现在程序的开头,不能把这部分丢到程序的中间或者下方,毕竟是预处理,(总不会有人先上完课才预习的吧?)

2.stdio.h

        这是一个头文件,我们说以.c为后缀的都是源文件,.h为后缀的都是头文件。那么,什么是源文件,什么是头文件呢?

        其实很好理解,源文件就是一项工程的方案,比如要盖一层楼,你的方案就是大楼的起草图,那么头文件就是你要借助或者帮助你完成建造的辅助方案,简单点说就是一个工具。

        好了理解清楚头文件后我们来学习stdio.h,其实stdio.h代表了标准输入输出,在这个头文件中包含了标准输入输出的函数定义。通过预处理,能够在该源文件中无限使用输入输出及其相关函数。<>相当于是把内容括起来,不必要着重理解,自己写的时候记得写上就行。

        那么至此,第一行内容就介绍完了,我们试着将其连起来看看。#include<stdio.h>在编译器的上方写上这么一行,编译器就知道你想说,我在写这个源文件,你必须要帮我把标准输入输出这个头文件加进来(预处理)一下,不然我没法继续。然后计算机就会按你说的乖乖去办。

3.int main()

        int--其实是一种数据类型-整形关键字。我们知道,在我们日常生活中,存储的数字无非就整数、小数,而在计算机中int就是整数类型,即整形。在这里表示main() 函数返回一个整形int,这与大括号{}内的最后一个语句“return 0;”相呼应,至于什么是关键字,以后还会详细为你解释,总之先记住int是数据类型关键字之一。

        main()--()表明这是一个函数。请大家先记住如果看到一个英文单词+()这种形式的语句,优先考虑这是不是函数,当然也会有例外的,比如sizeof()是一个运算符或者说是操作符,这个暂时先不用记住,后面会慢慢接触到。回到main()函数,这是C语言中必须出现的函数,相当于程序的入口,没有这个函数,那程序根本跑不起来。另外值得注意的是,main()函数在工程中只能出现一次,如果在一项工程中main()出现了两次,那么这个程序也是错的。

4.printf();

        printf()-函数。前面说过,出现英文单词+()就应该想到是不是函数,恰好printf()就是一个函数,这是一个标准输出函数,其作用是将"里面的信息打印到屏幕上",<--如这个所示,其输出结果就是,里面的信息打印到屏幕上,读者如果装好了编译器可以亲手验证一下。另外,我们将"字符串"括起来的语句叫做字符串,字符串其实就是字符的集合形状像烧烤,所以叫字符串(奸笑)。你只需要记住字符串出现都必须被"包裹起来"就行。补充一下,单个字符要被''包裹起来,如'A'。

5.return 0;

        return语句。这个语句出现在{}的末尾,是函数的结束标志,上面提到过其中的0与int形成呼应,表示返回一个整形数字0。其实0可以改成其他数字的,你可以返回1可以返回100,但这里为什么要返回0呢?其实是因为0表示正常返回,函数正常结束。当然原因不至如此,到以后学习会慢慢接触到,不必着急。

6.转义字符\n

        \n是C语言中的一个转义字符,首先看到字符我们可以清晰地知道这是个整体,这是个字符。还记得我在第4点介绍字符串时说过的吗?我说单个字符要用''给它包起来,为什么这里不用呢?原因很简单,因为\n能与其他字符一起组成字符串,这也就证明了\n其实是一个字符。那为什么\n没被打印到屏幕上呢?我猜你已经想到了。转义的意思是将原来的意思转变一下,在这里其实就是字符'n'转换一下意思,变为换行。那么如果没有\n打印出来的又是什么呢?

打印结果如上图所示,大家可以自行感受一下 

        至此,我们已经将图片中的代码挨个解释了一番,不难看出,这其实是一个非常简单的程序,仅仅是打印一行信息Hello world!就结束了,但是往往程序越简单就越容易出错,稍不留神写错个字符就可能出bug,甚至是程序崩溃,我们作为新手应该好好适应一下写代码的感觉,慢慢找出自己的不足,比如标点符号是否经常打成中文的、单词会不会经常写错、代码风格会不会给人产生歧义,诸如此类。万事开头难,当你写代码越成熟的时候,你的错误就越来越难被人发现,到那时,你将会感慨,要是当时好好改程序,日积月累,现在哪会出那么多bug!(哭诉脸)


三、注释

1.注释是什么?

        相信大家在写数学题时,用的最多的无疑是草稿纸,草稿纸就相当于自己思考的过程,而最终写进答题卡的往往是最精简的。正因为精简,往往让人难以理解,甚至前一天写出来的题目第二天就看不懂了,而当我们重新拾起草稿纸那一刻,逝去的记忆便会一下涌进脑子。有时候写代码也是一样,当你写了个难以理解的代码时,先别过度兴奋,先别跑去告诉你的朋友,你得先用注释好好解释一波,不然当你炫耀的时候突然忘了这程序怎么跑出来的,到时你朋友都帮你尴尬。

        所以,注释就是一段文字(英文、汉语...),为了让程序员看懂而写的一段解释性文字。内容由自己决定,建议越简洁、表达越清晰为好。编译器会帮你跳过注释的内容,也就是说,被注释的文字无法被编译器识别,但能被人类看到。

2.注释的类型

        注释有两种类型,一种是C语言的,另一种是C++的。

C语言注释形式

         /**/  这个就是C语言的注释形式,只需要把注释内容放到/*这个里面*/就行,这种能跨行注释

 C++的注释风格

        //这种是c++的注释风格,使用这种注释时需要将注释内容写在//后面,如上图所示。这种注释风格非常方便,同时也很容易打,所以这种注释也经常被使用在C语言代码中。

        其实C++语言是在C语言的基础上发展而来的一门语言,故而很多知识点也是相通的,也正因如此c和c++不分家,c++的注释风格也可以在c中使用。


四、做个简单的总结

        本文主要讲了三大方面的知识,首先教大家选一款好用的编译器,为自己写代码提供一个好的环境,windows端推荐vs2022,苹果端推荐用xcode。然后,为大家介绍了每个程序员都要接触到的第一个程序,打印Helllo world!,我们知道了预处理指令;知道了源文件、头文件;也知道了main()函数;同时也了解到了printf()这一个标准输出函数。最后我们说注释是为了能让程序员更容易理解代码而写的,最常用的是C++的注释风格//

        非常感激你能看到这里,写文章能被别人认真读真的是我的福分,希望这篇文章能对你有所收获,哪怕是些许我也就很欣慰了(微笑)。

AD9361功能介绍和使用 AD9361使用分数分频锁相环(PLL)来产生发射机和接收机本地振荡器(LO)频率和BB PLL。BB PLL 可用于数据转换、数字滤波器和 |/O 端口。PLL的参考时钟可以由外部振荡器或外部晶体(XO)和数字可编程片内可变电容提供,电容微调产生参考时钟频率,XO和微调电容的组合统称为DCXO。有多个天线输入的分集系统。接收链数据首先经过低噪声放大器(LNA),然后是同相(1)和正交(Q)放大器,混频器和频带整形滤波器,可将接收到的信号下变频为基带以进行数字化。时分双工(TDD)和频分双工(FDD)。。。 阅读详情

相关推荐

Cgroup对进程所占用的CPU与内存资源同时进行限制的测试

测试环境:Ubuntu。处理器数量:1CPU。内存大小:2048MB。 以下是测试程序mem_cpu_test.c的代码。 将mem_cpu_test.c编译为可以运行的程序mem_cpu_test。 运行程序,并用top命令查看mem_cpu_test所占用的系统资源情况,可以看到,mem_cpu_test使用了50%左右的内存资源,也就是1000MB左右,并占用了接近全部的CPU资源。 关闭以上的程序后,在Cgroup子系统memory和cpu下分别创建进程组test1和test2。 并设置tes

qq_44998067的博客 1153

【初识C语言】C语言的常见概念

等等。这些符号被称为保留字或者关键字。关键字都有特殊的意义,是保留给C语⾔使⽤的程序员⾃⼰在创建标识符的时候是不能和关键字重复的关键字也是不能⾃⼰创建的。C语言的32个关键字如下:externstatic注:在C99标准中加⼊了inline 、restrict 、_Bool 、_Complex 、_Imaginary 等关键字。⼀些关键字⼤家可以去了解⼀下,不过使⽤最多的还是上⾯的32个关键字。(C语⾔关键字的全部介绍)

2401_88325505的博客 2377

TCP/IP协议栈之LwIP(三)---网际寻址与路由(IPv4 + ARP + IPv6)

一、网际寻址原理 当网络设备地址总数并不是很多的情况下,有了唯一地址(比如MAC地址)就可以定位相互通信的主体。然而,当地址总数越来越多时,如何高效地从中找出通信的目标地址将成为一个重要的问题。为此人们发现地址除了具有唯一性还需要具有层次性。MAC地址虽然具有唯一性,但没有层次性,也即当网络设备增加到一定程度,需要将网络分成多个数据链路时,MAC地址无法跨链路寻址,是真正负责最终通信的地址。要实现跨局域网的网际寻址,就要靠具有层次性的网络IP地址实现了。

流云 6819

初识C语言——C语言常见概念

函数头书写头文件函数体主函数语句return 0;C语言程序是由一个或多个函数组成,其中必须包含main(主函数)如你所见,一个基本的C语言程序,包含函数头与函数体,其中:1-1 函数头与头文件函数头:一般书写头文件。头文件:所谓头文件,顾名思义,就是放在前头的文件,在正式程序开始运行之前就要执行的内容。为什么头文件在程序运行之前就要处理呢?这是因为,c语言的编译者们,编译了许多预先写好的程序,并将它们集合在c库之中,让C语言的使用者更方便地进行程序的编写。下面,我举一个。

2401_88688442的博客 2039

增量编码器资讯大全

增量编码器是什么 增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小,按照工作原理编码器可分为增量式和绝对式两类。 增量式编码器是将位移转换成周期性的电信号,再把这个电信号转变成计数脉冲,用脉冲的个数表示位移的大小。 编码器是把角位移或直线位移转换成电信号的一种装置。前者称为码盘,后者称码尺.按照读出方式编码器可以分为接触式和非接触式两种.接触式采...

kindele的博客 6008

2、TCGA数据处理(差异分析前处理)

注意:1、是R语言中用于读取文本文件并创建数据框的函数。它可以从文本文件中读取数据并将其存储为数据框的形式,每一列代表一个变量,每一行代表一个观察值。2、括号要成对,不能少了;3、file = 'TCGA-LIHC.htseq_counts.tsv'引号可以是单或双引号,建议单;4、逗号主要中英文,都是用英文模式才没错;5、.tsv文件类型必须要有,不能删除,否则读不进来;6、上面代码将TCGA-LIHC.htseq_counts.tsv文件读入并赋值给count1。

PLW_12的博客 2667

初识C语言——C语言的常见概念(下)

在上一章,我们认识了C语言的概念、历史、使用方法。在对C语言有了初步的了解之后,我们可以来写下我们的第一个C语言程序啦!😚 接下来,我将会给大家介绍,在编写C语言的时候常用的语句和函数。

xxpigpigpigxx的博客 1606

Python爬虫实战:利用Playwright和反反爬技术高效抓取Bloomberg金融数据

用户行为分析(鼠标移动、点击模式)请求头检测IP频率限制WebSocket通信验证Canvas指纹识别我们的爬虫需要模拟人类行为,使用代理IP池,并合理控制请求频率。

2201_76125261的博客 1020

初识C语言之C语言的常见概念

1、使用VS2022写出C语言程序的步骤:a.创建项目 b.创建源文件 c.写代码2、源文件:.c为后缀的文件;头文件:.h为后缀的文件1、关键字关键字都有特殊的意义,是保留给C语言使用的程序员自己在创建标识符的时候是不能和关键字重复的关键字也是不能自己创建的。2、C语言中的32个关键字添加链接描述(C语言关键字的全部介绍)

2501_91964758的博客 1806

TI单芯片毫米波雷达1642代码走读(〇)——总纲

前言 近年来,自动驾驶行业发展如火如荼,雷达技术也逐渐从军工封闭圈走向了开放的市场。 毫米波雷达具有全天候探测能力,特别是在雨雪雾天气以及夜间都能可靠工作,并且探测距离相对其他车载传感器非常远,对运动目标非常敏感,价格还低廉,这些特性都使其成为自动驾驶感知层面不可或缺的一环。 现如今的雷达已经不仅仅局限于测距测速测角等传统的功能,雷达技术正在从感知走向认知、从宽带走向超宽带、从二维走向三维四维、从相控阵走向数字阵列、从单通道走向MIMO、从独立工作走向分布式协同、从分立组件走向射频数字一体化。MIMO

3万+

PyTorch生成式人工智能(1)——神经网络与模型训练过程详解

在本节中,我们介绍了传统机器学习与人工神经网络间的差异,并了解了如何在实现前向传播之前连接网络的各个层,以计算与网络当前权重对应的损失值;实现了反向传播以优化权重达到最小化损失值的目标。并实现了网络的所有关键组成——前向传播、激活函数、损失函数、链式法则和梯度下降,从零开始构建并训练了一个简单的神经网络。

盼小辉丶的博客 1万+

C语言初识篇——常见概念

C语言不同于python语言,在变量的定义中首先需要声明变量的类型,这样才能成功创建变量。//定义整型变量age并赋值18//字符类型变量sex为M//浮点类型变量weight类型名称【空格】变量名Python基础语法篇——变量、输入输出、注释和运算符。

weixin_72923265的博客 1127

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

初识C语言以及C语言常见概念

在VS上写代码,我们是需要创建项⽬的,直接新建项⽬就可以了。在项⽬中就可以添加源⽂件和头⽂件。C语⾔把 .c 为后缀的⽂件称为源⽂件,把 .h 为后缀的⽂件称为头⽂件。C语⾔中有⼀批保留的名字的符号,⽐如: int 、 if 、 return ,这些符号被称为保留字或者关键字。1.关键字都有特殊的意义。2.程序员自己在创建标识符的时候不能和关键字重复。3.关键字也是不能自己创建的。

CSQCSQCC的博客 1314

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

初识C语言的常见概念

如:A,B,a,b,@,*等。C语言最初是作为Unix系统的开发工具而发明的,(Unix系统是操作系统之一,操作系统有Windows,Linux,Unix等等,其中Unix系统多用于国外的高校和实验室中)后经过长期的积累和演变,在1988年美国国家标准协会(ANSI)正式将C语言标准化,使得C语言开始稳定和规范化,至此C语言一直沿用到今,目前在计算机语言的排行榜上仍然位居前列。:制表符,使得光标移到下一个水平制表位,起一个对齐的作用,也是键盘上的Tab键,移动的宽度通常为4或8的倍数的字节。

wzsygcg的博客 739

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

【C语言】初识C语言(常见的C语言概念)

新建项目:新建项目所要注意的有(1)最好保证项目名称有意义(2)把代码放在规划好了的位置(3)为了方便后期查看,路径中最好不要有中文或者空格创建源文件:创建好项目后,右击源文件,选择添加—新建项,选择C++文件,这里没有C文件选项,因为C++和C基本不分家,将后缀名.cpp改为.c就可以了,创建好后就可以开始写我们的第一个C语言程序了注意:其中.c的文件叫源文件,.h的文件叫头文件(head),后面会慢慢讲到。

hdxbufcbjuhg的博客 1647

初识C语言——C语言的常见概念(上)

所以,让我们从头开始,慢慢认识C语言这个好帮手,由浅至深地了解和学习C语言把! 😏!

xxpigpigpigxx的博客 907

系统性学习C语言-第一讲-初识C语言常见概念

你所见过的最全面,最详细讲解C语言知识点的文章,第一讲-C语言常见概念

2401_87023016的博客 1256

1.初识C语言——C语言的常见概念

•\0:null字符,代表没有内容,\0就是\ddd这类转义字符的⼀种,⽤于字符串的结束标志,其ASCII码值是0.②arr2的打印就是完全正常的,就是因为arr2数组是使⽤字符串常量初始化的,数组中有\0作为技术标志,打印可以。:从双斜杠到⾏尾都属于注释,这种注释只能是单⾏,可以放在⾏⾸,也可以放在⼀⾏语句的结尾。在现代系统上,这已经反映不出来了,⾏为改成类似于\v。•\v:垂直分隔符,光标移到下⼀个垂直制表位,通常是下⼀⾏的同⼀列。括起来的,如‘a’,‘b’,‘@’(a,b,@,#等都称为字符)

2301_81295337的博客 1294

初识C语言①:C语言当中一些常见的概念

本文是C语言一些基本概念的介绍。

2401_85337815的博客 880

初识C语言-C语言常见的概念

C语言是一门计算机语言,是人和计算机交流的一种语言。

qq_57274389的博客 1004

初识C语言(C常见概念)

c语言常见概念(初识c语言)!!!!!

Shen_05的博客 303

初识C语言1.常见概念

为了不再重复实现常⻅的代码,让程序员提升开发效率,C语⾔标准规定了⼀组函数,这些函数再由不同的编译器⼚商根据标准进⾏实现,提供给程序员使⽤。这些函数组成了⼀个函数库,被称为标准库,这些函数也被称为库函数。⼀个系列的库函数⼀般会声明在同⼀个头⽂件中,所以库函数的使⽤,要包含对应的头⽂件。C语⾔中有⼀批保留的名字的符号,⽐如: int 、 if 、 return ,这些符号被称为保留字或者关键字1关键字都有特殊的意义,是保留给C语⾔使⽤的2程序员⾃⼰在创建标识符的时候是不能和关键字重复的。

2501_91052695的博客 814
上一篇: 关于纯小白入门C语言的建议
下一篇: C语言-比较三个数的大小并排序
MuMu-D_D
博客等级 码龄3年 298粉丝 32原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值