0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

零基础接触C语言怎么上手

C语言编程学习基地 来源:C语言编程学习基地 作者:C语言编程学习基地 2022-07-27 15:14 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

一、工具的选择

工欲善其事,必先利其器。相信我,选择VS不会错(推荐版本2013~2019)。

①为什么不选VC6.0?这个编译器是98年的软件,老旧且兼容性差。

②为什么不选Devc++?这个软件十多年前就停止更新了,敲出的代码不美观,不利于好的代码风格的形成

③为什么不选CodeBlock?不主流,需要配置,不适合初学者

④为什么不选VSCode?需要配置环境,不适合初学者

VS提供的错误检查和格式缩进对新手很友好

二、工具的下载安装

视频肯定比博文讲的清楚,实践性也更强

VS2019安装教程VS2013安装教程

三、如何学习一门语言

作者当然没有资格对这一问题下定断言,只是提供作者这两个月以来的学习经验,帮助新手少走弯路

上课篇:如果是选择视频学习的,不要死揪着不懂的地方,要跟上老师的上课思路。刚开始学肯定都会有很多疑问,但之后肯定都会讲到。所以上课要先试着接受老师所讲的知识

笔记篇:如果说老师讲的知识都在课件上或书本上的话,上课不要急于记笔记,而是在草稿本上记下上课的思路。如果能照着上课思路写成博文那说明掌握的很好,所以也可以说把CSDN当成笔记本来用 。同时推荐一些做笔记的软件:有道云笔记Xmind印象笔记

实战篇:1.代码一定要敲(敲重点啦),体验自己成功写出代码的快乐。2.看待代码有三个层次——看代码是代码(小白),看代码是内存(高手),看代码是代码(大佬)。所以在学习时要主动加深对内存的理解。3.遇到问题要学会调试(之后会专门提到)——程序员的必修课。

四、创建第一个.c文件

7e9b7026-0d7b-11ed-ba43-dac502259ad0.png

7ebeafbe-0d7b-11ed-ba43-dac502259ad0.png

7ed2a2c6-0d7b-11ed-ba43-dac502259ad0.png

至此文件已经创建好了。

(解决方案资源管理器在这里)

7ee35738-0d7b-11ed-ba43-dac502259ad0.png

[相信你对上面没提到的细节有些疑惑,但还是那句话,先接受现有的知识,其他的以后都会懂 ]

五、写下第一段代码

7f03996c-0d7b-11ed-ba43-dac502259ad0.png

按下ctrl+fn+f5(或者Ctrl+f5)可以在屏幕上打印hello world。现在我们从三个方面解释这段代码:

知识点1:main函数

特点:main函数为函数入口,有且只有一个,即在一个工程下即使有多个文件也只可以有一个main函数,试想一个文件如果有多个入口那到底从哪里进去呢?

规范性:

1.这里int不写虽然系统默认返回类型为int,但是作为优秀的程序员们,我们要力求规范

2.return不写虽然也不会报错,但还是上面提到的规范规范问题

知识点2:库函数

是什么:库函数是 C语言提供的,使用的时候只需要引用即可。引用的方式是#include< xx.h >这里的printf所对应的库函数位于stdio头文件下,引用这个头文件就可以使用printf函数了

接下来我们认识一下学习到的第二个函数printf

printf函数功能是是将特定格式的数据输出到屏幕上,没有加格式就原封不动的打印

7f21fcf4-0d7b-11ed-ba43-dac502259ad0.png

我们实践一下加深理解:具体结果请大家实践操作

7f375d9c-0d7b-11ed-ba43-dac502259ad0.png

知识点3:int——数据类型

这个int是什么东西,有什么用呢?

是什么:int表示是一种数据类型

前面说过main是一个函数,函数前面加类型表示这个函数的返回值(函数的知识之后会讲)

这里重点讲一下数据类型

7f4b8380-0d7b-11ed-ba43-dac502259ad0.png

【short=short int long =long int (在这里int被省略了没写而已)】

①为什么有类型

试想一下我们描述超市里的一件商品,总得有名字吧,也总得有编号吧,价格肯定也不能少吧,所以我们怎么可能用一种类型就描绘出所有的内容呢。不同类型代表不同的含义,他们向内存申请的空间可是不同的,这很好理解。现在我们分析一下不同类型的大小。

②类型的大小

我们首先介绍一个关键字sizeof(他也是一个运算符。敲重点!!!sizeof不是函数,也不能认为关键字和运算符一样),他的作用是返回某个类型的大小。

7f6c1370-0d7b-11ed-ba43-dac502259ad0.png

认识了sizeof之后我们用他来求各个类型的大小(单为字节B)

7f86715c-0d7b-11ed-ba43-dac502259ad0.png

<关于long的大小等于int的理解>C标准只规定了long的大小>=int即可,具体的大小由编译器决定。

7fb73512-0d7b-11ed-ba43-dac502259ad0.png

之前提到,不同的类型决定了向计算机申请的内存大小,那内存的单位是怎么理解的?

一个b可以看成是一个小格子,一个B则是八个小格子组成。计算机中采用二进制存储,也就是说一个格子可以表达两种信息(0 或者 1,很好理解,计算机是很多“开关”组成的,开关要么开要么关,于是就有了0 1),那么一个B可以表示的信息则有2^8种。

③类型的意义

根据前面提到的我们可以算出1个int大小可以表达的信息有2^32(看成是有序的),而一个short表示的信息有2^16,差别还是很大的。假设我们要存储一个人的年龄,总不会超过四位数吧,用int表示的话岂不是大材小用。虽然short也大很多,但浪费的内存更少。所以从中我们可以看出类型的意义在于合理的向内存分配空间。

希望对大家有帮助!


审核编辑 :李倩


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • C语言
    +关注

    关注

    183

    文章

    7646

    浏览量

    146114
  • 编译器
    +关注

    关注

    1

    文章

    1672

    浏览量

    51895

原文标题:经验分享丨零基础第一次接触C语言,应该怎么上手?

文章出处:【微信号:cyuyanxuexi,微信公众号:C语言编程学习基地】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    2小时搞定鸿蒙应用!零基础做出你的鸿蒙“处女作”

    当下,低门槛开发正成为生态扩张的最强推力,而鸿蒙生态的快速壮大,也让越来越多零基础小白蠢蠢欲动,想加入开发大军。但繁琐的配置流程、深奥的代码,也让很多人打起了退堂鼓。近日,鸿蒙开发者官网全新上线
    的头像 发表于 04-17 14:04 62次阅读
    2小时搞定鸿蒙应用!<b class='flag-5'>零基</b>础做出你的鸿蒙“处女作”

    零基础入门:用libfota2实现第三方服务器FOTA升级服务

     即使你是FOTA新手,也能通过本教程掌握远程固件升级的核心实现。我们以libfota2为客户端核心,结合自建第三方服务器,提供一份零基础可上手的完整FOTA服务搭建指南。从服务端部署到设备端响应
    的头像 发表于 01-19 18:35 198次阅读
    <b class='flag-5'>零基</b>础入门:用libfota2实现第三方服务器FOTA升级服务

    如何用好 C 语言函数的返回值?

    的重点,本文更关心的是,该以何值表示“成功”,何值表示“失败”。 按照C语言语法, 0 表示假,非(常常用 1)表示真,那是否函数也用 0 返回值表示“失败”,1 返回值表示“成功”呢? 行业
    发表于 12-25 07:17

    迅为RK3588开发环境搭建“三步曲”,从到一轻松上手

    迅为RK3588开发环境搭建“三步曲”,从到一轻松上手
    的头像 发表于 12-01 11:51 1317次阅读
    迅为RK3588开发环境搭建“三步曲”,从<b class='flag-5'>零</b>到一轻松<b class='flag-5'>上手</b>!

    C语言的常量介绍

    在程序执行过程中,值不发生改变的量称为常量。 mtianyan: C语言的常量可以分为直接常量和符号常量。 直接常量也称为字面量,是可以直接拿来使用,无需说明的量,比如: 整型常量:13、0
    发表于 11-24 07:12

    C语言和单片机C语言有什么差异

    单片机c语言相对于普通C语言增加了一些基本的指令,还有变量的赋值是16进制,当然单片机c语言只牵
    发表于 11-14 07:55

    免焊BNC接头接法:零基础快速安装指南与信号稳定技巧

    通过以上步骤,即使零基础用户也能快速完成免焊BNC接头的安装,确保视频、音频信号稳定传输,满足监控、音视频工程等场景需求。
    的头像 发表于 08-28 16:59 2430次阅读
    免焊BNC接头接法:<b class='flag-5'>零基</b>础快速安装指南与信号稳定技巧

    【教程】零基础!手把手教你使用STM32F4进行E22-400T22S编程通信

    通过本文带大家零基础使用STM32F407VET6单片机进行E22-400T22S模块编程并进行简单的通信,当然如果学会了,也可以举一反三应用于E22、E220、E32所有模块上。一STM32环境
    的头像 发表于 07-03 19:32 1800次阅读
    【教程】<b class='flag-5'>零基</b>础!手把手教你使用STM32F4进行E22-400T22S编程通信

    零基础学习LuatOS编程:快速上手开发实战教程!

    无论你是刚接触物联网编程的新手,还是希望拓展技能的技术爱好者,本教程将为零基础的读者提供一条清晰的LuatOS学习路径。从安装开发工具到编写第一个程序,我们将通过实例讲解核心概念,助你快速实现从理论
    的头像 发表于 06-13 17:27 736次阅读
    <b class='flag-5'>零基</b>础学习LuatOS编程:快速<b class='flag-5'>上手</b>开发实战教程!

    STC8H 单片机 + RA8889/RA6809:重新定义嵌入式触控交互_高流畅、低延迟、零基础的人机界面(一)

    STC8H 单片机 + RA8889/RA6809:重新定义嵌入式触控交互_高流畅、低延迟、零基础的人机界面
    的头像 发表于 05-28 16:01 1464次阅读
    STC8H 单片机 + RA8889/RA6809:重新定义嵌入式触控交互_高流畅、低延迟、<b class='flag-5'>零基</b>础的人机界面(一)

    一技在手,医疗无忧!零基础转行高薪医疗维修工程师

    ,剩下的就看个人能力了,对医疗器械维修感兴趣但迷茫的可联系我们,帮你解决疑难问题,带你入门医疗维修行业! 一技在手,医疗无忧!零基础转行高薪医疗维修工程师!” “缺口40万+,月薪过万!抢占医疗行业
    发表于 05-15 10:22

    【「零基础开发AI Agent」阅读体验】+读《零基础开发AI Agent》掌握扣子平台开发智能体方法

    收到发烧友网站寄来的《零基础开发AI Agent》这本书已经有好些天了,这段时间有幸拜读了一下全书,掌握了一个开发智能体的方法。 该书充分从零基础入手,先阐述了Agent是什么,它的基本概念和知识
    发表于 05-14 19:51

    【「零基础开发AI Agent」阅读体验】+ 入门篇学习

    很高兴又有机会学习ai技术,这次试读的是「零基础开发AI Agent」,作者叶涛、管锴、张心雨。 大模型的普及是近三年来的一件大事,万物皆可大模型已成为趋势。作为大模型开发应用中重要组成部分,提示词
    发表于 05-02 09:26

    深入理解C语言C语言循环控制

    C语言编程中,循环结构是至关重要的,它可以让程序重复执行特定的代码块,从而提高编程效率。然而,为了避免程序进入无限循环,C语言提供了多种循环控制语句,如break、continue和
    的头像 发表于 04-29 18:49 2206次阅读
    深入理解<b class='flag-5'>C</b><b class='flag-5'>语言</b>:<b class='flag-5'>C</b><b class='flag-5'>语言</b>循环控制

    【「零基础开发AI Agent」阅读体验】+初品Agent

    期待中的《零基础开发AI Agent——手把手教你用扣子做智能体》终于寄到了,该书由叶涛、 管锴、张心雨完成,并由电子工业出版社出版发行。 全书分为三个部分,即入门篇、工具篇及实践篇。由此可见这是
    发表于 04-22 11:51