我该不该学习C语言
这几天把c语言过了一遍,基本上算是入门了,常用语法、函数的使用。c语言是比较古老的语言了,很多系统的底层、工业控制软件都是使用C语言编写,过一遍之后觉得c语言屹立不倒是有原因。c程序员有一句话:使用c语言时间长了,感觉自己能控制整个世界。
01 c语言和其他语言的区别和联系
c比较古老,很多现代编程语言设计时基于c的语法。C是面向过程的语言,Java、c#、Python、c++等是面向对象的语言,封装的比较好,同样执行速度也不如c快。c没有复杂的封装,所以使用起来很多东西需要自己编写实现,入门容易精通难。c很多操作直接面向内存操作,还需要手动释放内存,控制性更强,但也需要更多的经验才能保证程序的稳定健壮,像现代语言都不需要考虑内存释放。
02 c语言好学不?
好学,如果你学过Java、c#语言就会发现语法都差不多,像c语言中的结构体就和c#的结构很像。有很多人认为指针比较难学,其实不然,能搞懂Java、c#中的值类型和引用类型就能搞懂c语言的指针。c中的函数都是比较基础的函数,不像面向对象语言那样庞大繁多。掌握了常用的函数后,其他的可以查函数手册,用法都差不多,soso easy。
03 能干啥?
编写嵌入式程序(电子电路控制)、桌面程序、游戏、写个服务、写个dll库给别人调、写个操作系统(谁写出来请务必联系我)、写个别的语言。
04 那我该不该学?
这个由你自己决定!我个人认为不该学,现在很多公司不提倡重复造轮子,要快速开发,明天上线,用c写程序实在不合时宜。我个人认为该学,下图便是对这个急功近利时代的嘲讽,只会复制粘贴的属于体力劳作,详情参考之前的这篇文章 程序员都知道,如何不被淘汰

图片来自网络
为啥有些公司乐意招 985、211 毕业的,培训出来的就不能创造价值了吗?并非鄙视培训出来的同学,但 985、211 的同学确实好使,他们受到过更加基础系统的训练,操作系统、网络协议、算法、数据结构这些思维性的才是核心竞争力,所以学习c造造轮子也并非无用功。
大家思考一个问题,开源社区有很多优秀的开源项目,我们国人的开源项目能占到多少?
我该不该学习C语言的更多相关文章
- 我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗
文章背景,回答提问:我想立刻辞职,然后闭关学习编程语言,我给自己3个月时间学习C语言!这样行的通吗? 我的建议是这样:1. 不要辞职.首先说,你对整个开发没有一个简单的了解,或一个系统的入门学习.换句 ...
- 开始学习c语言
学习c语言的第一篇博客,心里的感觉说不出来,不知道能不能坚持下去,我是一名工作了差不多2年的phper,其实我本来是想学习数据结构和算法的,但是尼玛这年头那些书的例子都不是php,动不动就是c,jav ...
- 学习C语言感悟
还记得刚上第一节C语言课的时候,基本上一节课只有最后10分钟的内容听懂了.在此之前从没接触过C语言,想说看看书预习一下吧,可是完全找不到条理,发现老师也不是按书上的顺序讲的.当时就特别着急,想说难道 ...
- 学习Nim语言.rar(nim语言中文教程下载)
学习Nim语言 nim 语法上类似python ,是一门静态编译型语言,nim 使用空格缩进标示语句块的开始和结束, 喜欢python风格的程序员应该也会很容易适应和喜欢nim的风格. nim语言官方 ...
- 学习C语言常用的几个网站
今天整理资料,发现了以前学习C语言时,常用到的几个网站: 1.http://ganquan.info/standard-c/ 改网站包含了C语言标准版的15个头文件解释以及函数,137个函数和演示 ...
- 对大一新生开始学习C语言课程谈几点看法
大家好,首先祝贺大家进入了大学,迈入了大学的校门,也意味着开始了新的征程,希望大家能够有一个美好的大学四年. 先做下自我介绍,我叫李帅阳,(大家可以称呼我 李老师,或是班助,或是...)这是在邹欣老师 ...
- 狗屁不通的“视频专辑:零基础学习C语言(小甲鱼版)”(2)
前文链接:狗屁不通的“视频专辑:零基础学习C语言(小甲鱼版)”(1) 小甲鱼在很多情况下是跟着谭浩强鹦鹉学舌,所以谭浩强书中的很多错误他又重复了一次.这样,加上他自己的错误,错谬之处难以胜数. 由于拙 ...
- 新学习的语言Groovy
什么是 Groovy? Groovy 是 JVM 的一个替代语言 —替代 是指可以用 Groovy 在 Java 平台上进行 Java 编程,使用方式基本与使用 Java 代码的方式相同.在编写新应用 ...
- 转:从开源项目学习 C 语言基本的编码规则
从开源项目学习 C 语言基本的编码规则 每个项目都有自己的风格指南:一组有关怎样为那个项目编码约定.一些经理选择基本的编码规则,另一些经理则更偏好非常高级的规则,对许多项目而言则没有特定的编码规则,项 ...
- 漫谈C语言及如何学习C语言
抄自:http://my.oschina.net/apeng/blog/137911 目录:[ - ] 为什么要学习C语言? C语言学习方法 1,参考书籍 2,动手实验环境搭建 3,网络资源 附录 一 ...
随机推荐
- java(二)认识类和函数
java中,声明类使用new关键字 类名 类变量名 = new 类名(构造函数形参表): 静态函数内不能有非静态类,但是可以有非静态函数. package com.company; /** * Cre ...
- (zxing.net)一维码Codabar的简介、实现与解码
一.简介 一维码Codabar:由4条黑色线条,3条白色线条,合计7条线条所组成,每一个字元与字元之间有一间隙Gap做区隔. 条形码Codabar包含21个字元: (1).10个数字0~9; (2). ...
- Webserver asp配置及伪静态设置
Webserver IIS asp配置及伪静态设置 一.概述: 在Windows Server 2003系统中,用户可以借助IIS 6.0配置基于ASP.PHP.asp.NET等语言的动态Web网站 ...
- “全栈2019”Java第五十一章:继承与final关键字详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java第 ...
- Linux centos 7安装
Linux 安装 本章节我们将为大家介绍Linux的安装. 本章节以 centos6.4 为例. centos 下载地址: 可以去官网下载最新版本:https://www.centos.org/dow ...
- Windows 操作系统如何使程序开机自启
Windows 操作系统如何开机自启 一.前言: 作为一只运维开发,很多时候需要将自己的小工具做开机自启.在 Linux 的世界里,如果你希望一个程序可以开机自启,那么可以在/etc/rc.d/rc. ...
- Postman使用手册4——API test
一.Pre Request Scripts Postman v0.10+ 版本支持pre-request scripts. prerequest script.png pre-request scri ...
- 使用 echart的jar包,传递到前台报 null错误
表现:后台创建 Option的JsonObjject传递到前台之后,失败,F12控制台报错:无法定义null的属性xxx 原因:使用jar包里面的对象分装没有默认值,而我们自己使用时只是对需要的对象进 ...
- IT项目管理者常用的项目管理工具(国产VS进口)?
对于IT项目管理工具相信很多IT项目管理者都不陌生,因为它是我们每天都要接触的,但是在前期选择IT项目管理工具的时候往往是我们最头疼的时候,所以今天我就给大家带来几款常用的国内外IT项目管理工具介绍: ...
- 容器化VS微服务
1 微服务 1.1 思想 开发人员自己测试.部署和运维自己编写的代码,即自己负责构建生命周期的全部. 1.2 Spring Boot 提供服务化的能力,即把容器.服务所需依赖和服务一起打包成一个jar ...