快速学习C语言途径,让你少走弯路
1.标准C语言能干什么?
坦白讲,在今天软件已经发展了半个多世纪,单纯的C语言什么都干不了。标准C语言库只提供了一些通用的逻辑运算方法以及字符串处理,当然字符串在C语言看来也是一种操作内存的方法,所以单纯的C什么都做不了,不论是游戏客户端,服务器以及其他插件标准C语言要配合相应的系统C调用和其他语言共同完成一个完整的软件。所以C只是一个入门,要想吃软件这碗饭还有很长的路要走
2.从学会C语言到能写软件还要做什么?
I.个人认为第一步是学习数据结构和算法。推荐一本书:《数据结构(C语言版) 》
有能力的同学应该从这本书开始就要慢慢开始英文原版阅读,当然在这里我给大家说的还是中文版的名字。
数据结构和算法两者密不可分,数据结构体现了数据在内存和硬盘中存储的形态,如何运用这些形态进行最优化操作,就要靠相应的算法来实现了
II.了解一点汇编知识。推荐一本书《汇编语言》作者:王爽
可以说这本书是中国代码人的骄傲,目前为止我还未看到过像王老师这样文笔流畅,深入浅出的把一个生涩的汇编语言描述的如此清晰的大师。王老师用中国人的思维方式,语言习惯,学习思路为我们介绍了汇编,这一点上惊为天人!!!
III.还是介绍一本书,不过这本书算是课外读物吧《编码——隐匿在计算机软硬件背后的语言》。看这本书时可以和前面几个步骤平行进行。这本书并不教你软件编程,却用宏观的角度概括了从数模电到C语言层次计算机的整体思路。非常棒
3.用什么系统学C?
linux!毫无疑问,天下武功出少林,所有操作系统出UNIX。而linux则是UNIX集大成者。linux版本众多,推荐Ubuntu,其界面友好,又不失UNIX本真。当然有钱的朋友用个苹果本本在Mac上搞也是一样牛逼的,但苹果这个东西学生party还不是每个人都消费的起的,所以没有条件的同学搞个Ubuntu玩玩就够了。现在用wubi这个软件,可以在window上直接格出一个文件夹作为Ubuntu的系统路径,跟安装一个应用软件一样简单,所以大家为何不试试呢。
在Ubuntu上我推荐大家跟着一本书来走《LinuxC一站式编程》宋劲彬老师所写。现在已近绝版,但网上有开源免费书籍可以下到。宋老师在国内时一直是一个较为有名的软件培训学校老师,这本书也是从零基础直接到LinuxC程序员的一条捷径,但由于是职业培训学校教材,就在基本功方面砍去了一些东西,我希望大家不要把这些基本的东西丢掉,否则到了三四十岁可能你就没饭吃了
4.掌握几种语言就可以算是个合格的程序员了呢?
这个问题仁者见仁智者见智。从我个人的角度讲,我现在玩过的语言全加起来一共有这么几种
C,C++,JAVA,Javascript,VB,Lua,SQL
不要被他们吓到,也不要膜拜哥,吼吼吼(自恋了)
快速学习C语言途径,让你少走弯路的更多相关文章
- 快速学习C语言一: Hello World
估计不会写C语言的同学也都听过C语言,从头开始快速学一下吧,以后肯定能用的上. 如果使用过其它类C的语言,如JAVA,C#等,学C的语法应该挺快的. 先快速学习并练习一些基本的语言要素,基本类型,表达 ...
- C语言超全学习路线(收藏让你少走弯路)
刚入门是否觉得C语言很难?那可能是你还没找到正确的C语言学习路线,收藏以防找不到,让你少走弯路. 基本语法 选择控制语句 if,swith 循环控制语句 while,for 控制语句相关关键字分析 变 ...
- 快速学习C语言三: 开发环境, VIM配置, TCP基础,Linux开发基础,Socket开发基础
上次学了一些C开发相关的工具,这次再配置一下VIM,让开发过程更爽一些. 另外再学一些linux下网络开发的基础,好多人学C也是为了做网络开发. 开发环境 首先得有个Linux环境,有时候家里机器是W ...
- 快速学习C语言二: 编译自动化, 静态分析, 单元测试,coredump调试,性能剖析
上次的Hello world算是入门了,现在学习一些相关工具的使用 编译自动化 写好程序,首先要编译,就用gcc就好了,基本用法如下 gcc helloworld.c -o helloworld.o ...
- 快速学习C语言四: 造轮子,ArrayList
高级语言里的列表是最常用的数据结构,在C里造个轮子玩玩,C没有泛型,先用int练习. Collection的ADT一般有hasnext,next,add, remove操作,List一般还加了remo ...
- 学习swift语言的快速入门教程推荐
随着苹果产品越来越火爆,苹果新推出的swift必定将在很大程度上代替oc语言.学好swift语言,对于IOS工程师来讲,已经是一门必备技能. 有一些比较好的英文版教程,值得学习. 1. Swift T ...
- Dart语言快速学习上手(新手上路)
Dart语言快速学习上手(新手上路) // 声明返回值 int add(int a, int b) { return a + b; } // 不声明返回值 add2(int a, int b) { r ...
- 如何快速高效率地学习Go语言
要想快速高效率地掌握Go语言,关键是要通过不断写代码去训练,熟能生巧.方法是没问题的,但具体的路径呢?就像开车,能不能给个导航?我希望这篇文章能起到一个导航的作用,这里提供的路径,应该对很多人都适合. ...
- 大神教零基础入门如何快速高效的学习c语言开发
零基础如果更快更好的入门C语言,如何在枯燥的学习中找到属于自己的兴趣,如果把学习当成一种事务性的那以后的学习将会很难有更深入的进步,如果带着乐趣来完成学习那将越学越有意思这样才会让你有想要更深入学习的 ...
随机推荐
- Java eclipse导入外部项目时出错怎么解决
从外部环境import一个项目进入Java工作环境中,若出现以下错误,解决方法如下: 鼠标移上去,会出现以下错误提示: 解决方法: 选中该项目->右键->Build path->Co ...
- 一天带你入门到放弃vue.js(一)
写在前面的话! 每个新的框架入手都会进行一些列的扯犊子!这里不多说那么多!简简单单说一下vue吧! Vue.js是目前三大框架(angular,vue,react)之一,是渐进式js框架,据说是摒弃了 ...
- 提升webpack打包速度
webpack打包文件体积过大,怎么提升速度? 借助webpack visualizer可视化插件,来看构建的情况.这个问题要具体情况具体分析,看看打包文件有哪些块头比较大,哪些不常改变,最好列一个l ...
- Java 常见异常种类
Java Exception: 1.Error 2.Runtime Exception 运行时异常3.Exception 4.throw 用户自定义异常 异常类分两大类型:Error类代表了编译和系统 ...
- HBase RegionServer Pause for hours 卡顿几小时 故障
关键词:hbase jvm gc regionserver wal pause 背景: HBase 1.1.2 客户的hbase集群最近出现RegionServer宕机情况.跟踪了master和RS日 ...
- Tornado-Secure cookie and Session
这一节涉及的内容有: 1.客户端和服务端操作cookie的方法 2.secure cookie的机制 3.基本/自定义session 文件结构 三个启动文件由下往上对应的分别是三种服务端:使用secu ...
- mobile_基础事件
DOM0 级事件模型(模拟器不支持) DOM0 级事件绑定 在 移动端有 300ms 的延迟 ontouchstart 手指按下事件 ontouchmove 手指移动事件 pntouchend 手指离 ...
- linux学习:xargs与grep用法整理
xargs xargs 是给命令传递参数的一个过滤器,也是组合多个命令的一个工具. xargs 可以将管道或标准输入(stdin)数据转换成命令行参数,也能够从文件的输出中读取数据. xargs 也可 ...
- Python练手例子(4)
16.一个数如果恰好等于它的因子之和,这个数就称为"完数".例如6=1+2+3.编程找出1000以内的所有完数. 程序分析:请参照程序Python 100例中的第14个例子 #py ...
- python联系-迭代器
from collections import Iterable from collections import Iterator import time class Classmate(object ...