嵌入式 正在入门,可是C基础比较差。求指导!! damifeng8@gmail.com 我的google邮箱 。 膜拜……
21 个解决方案
#1
推荐楼主看看《编写安全代码》一书
#2
要方便底层的控制就很难做到绝对安全
比如说人人都说python、、lua、php、java、C#好用,但我家就觉得他们难用
为什么,我是搞安全,做底层的,加密算法我都会自己实现,二进制协议我都得自己打包
python、lua之类的脚本的卖点就是“无需关注细节,只要关心业务逻辑”,但我的工作需求导致我的 业务逻辑就是内存细节。如果给我的数组不是个byte[]而是个hash表,我根本就没法工作!
各种语言都有其适应的用途而已
比如说人人都说python、、lua、php、java、C#好用,但我家就觉得他们难用
为什么,我是搞安全,做底层的,加密算法我都会自己实现,二进制协议我都得自己打包
python、lua之类的脚本的卖点就是“无需关注细节,只要关心业务逻辑”,但我的工作需求导致我的 业务逻辑就是内存细节。如果给我的数组不是个byte[]而是个hash表,我根本就没法工作!
各种语言都有其适应的用途而已
#3
C就是最适合我的工作的语言,它直接提供了对内存的大部分细节操作,但也不能说所有,一些Intel指令集一句机器指令提供的功能用C反而啰嗦一堆,这就是为什么汇编语言也还有其用武之地的原因,目前编译器对于SSE等高级指令的使用能力太差了
#4
我就是觉得自己C水平不够,实力不够。其实对于编程我有兴趣,而且浓厚,最近写驱动程序的时候嘛,感觉心有余而力不足,不对,心也不余。对于代码结构的掌控,也就是架构,对于部分语法的使用,我糊涂的很,逛了一天csdn,感觉低端的问题都没有太多。我纯粹一个很上进的小白。直到嵌入式对C要求蛮高,毕竟我还要进行一段时间的Linux的学习,如果C太差了,那就没办法了。所以没有安全感。
#5
看我就是C小白。编程都困难。想入门C,现在这样的状况,我觉得还有很大差距,不能随心所欲的使用C,先不看它的效果如何,很多东西我都没见过,更别说使用了。
#6
老老实实学语法,之后再谈别的
#7
经常有人说基础不好,要学C++,却不好好学习最经典的:The C Program Language。
C语言都没学好,整天玩弄类,模板,设计模式能把C++的效率与方便优势发挥出来?
C语言都没学好,整天玩弄类,模板,设计模式能把C++的效率与方便优势发挥出来?
#8
膜拜大牛啊
#9
有良方赐教……么
#10
单从语言上来说,C还是很简单的…………
没有什么特别复杂难以理解的概念,也没有隐藏太多的细节,不像C++
个人认为能够写出C程序后,再去看看C标准是有好处的
总的来说,语言只是工具,理解语言的关键在于知道每句语言会导致机器哪些动作
没有什么特别复杂难以理解的概念,也没有隐藏太多的细节,不像C++
个人认为能够写出C程序后,再去看看C标准是有好处的
总的来说,语言只是工具,理解语言的关键在于知道每句语言会导致机器哪些动作
#11
从编译的角度来说,SIMD支持差这板子打在编译器身上还真是不服啊
本来语言层面对SIMD支持就差,很多架构都是以C库加嵌入汇编的形式提供支持,编译器就算是巧妇也做不了这无米之炊啊
而且相比SIMD,MIMD才是目前编译器关注的主要方向…………
#12
计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……
#13
单从C语言这块,我觉得书太多。目不暇接、之前的都有学过,可能语法方面欠缺很多。
#14
今天浏览了很多大牛的论坛,感觉C标准必须看的。只是不知道最新的标准又没有中文版的。有些编译环境不同。
#15
目前学的嵌入式,以后可能做linux系统方面的。不过也想写底层驱动。我该怎么努力呢?
#16
C语言的书经典的也就一本,The C Program Languae。200多页,再慢的速度3个月也看完了。
其它: C专家,C和指针等书都是一些辅助。有时间就看,没时间不看也没关系。
等工作后真正有时间了再看也来得及。
如果是马上就要去找工作,建议突击看一下C和指针。
嵌入式Linux要学的东西就多了。
可以先学应用开发技能,再深入内核开发。
应用技能列表:
1> 常用linux命令使用
2〉git使用
3〉gcc与makefile编写
4〉shell编程与Perl
5〉Unix编程 (强烈推荐: Unix编程艺术)
6〉POSIX/SystemV API学习
7〉libc 接口学习
内核与驱动开发
1〉如何编译配置内核
2〉如何编译交叉编译工具
3〉如何阅读和调试linux内核
4〉驱动编写
5〉Rootfs系统构建
6〉相关硬件知识,如MTD/USB/PCI/I2C 等。
管理技能:
1〉如何做单体测试
2〉如何写概要设计和详细设计
3〉如何做技术PPT
4〉如何分配任务
5〉如何监督其他人的工作进度
6〉如何激励员工
7〉其他
其它: C专家,C和指针等书都是一些辅助。有时间就看,没时间不看也没关系。
等工作后真正有时间了再看也来得及。
如果是马上就要去找工作,建议突击看一下C和指针。
嵌入式Linux要学的东西就多了。
可以先学应用开发技能,再深入内核开发。
应用技能列表:
1> 常用linux命令使用
2〉git使用
3〉gcc与makefile编写
4〉shell编程与Perl
5〉Unix编程 (强烈推荐: Unix编程艺术)
6〉POSIX/SystemV API学习
7〉libc 接口学习
内核与驱动开发
1〉如何编译配置内核
2〉如何编译交叉编译工具
3〉如何阅读和调试linux内核
4〉驱动编写
5〉Rootfs系统构建
6〉相关硬件知识,如MTD/USB/PCI/I2C 等。
管理技能:
1〉如何做单体测试
2〉如何写概要设计和详细设计
3〉如何做技术PPT
4〉如何分配任务
5〉如何监督其他人的工作进度
6〉如何激励员工
7〉其他
#17
C99的中文版我手头没有,不过网上可能会有吧,不清楚来着
C11的话,我觉得应该是肯定没有中文版
#18
很清晰
#19
我是来学习的, 逛逛留个印. 方便以后查阅
#20
看看 深入理解计算机系统
#21
先解决 C 的 很多语法问题。嘿嘿
#1
推荐楼主看看《编写安全代码》一书
#2
要方便底层的控制就很难做到绝对安全
比如说人人都说python、、lua、php、java、C#好用,但我家就觉得他们难用
为什么,我是搞安全,做底层的,加密算法我都会自己实现,二进制协议我都得自己打包
python、lua之类的脚本的卖点就是“无需关注细节,只要关心业务逻辑”,但我的工作需求导致我的 业务逻辑就是内存细节。如果给我的数组不是个byte[]而是个hash表,我根本就没法工作!
各种语言都有其适应的用途而已
比如说人人都说python、、lua、php、java、C#好用,但我家就觉得他们难用
为什么,我是搞安全,做底层的,加密算法我都会自己实现,二进制协议我都得自己打包
python、lua之类的脚本的卖点就是“无需关注细节,只要关心业务逻辑”,但我的工作需求导致我的 业务逻辑就是内存细节。如果给我的数组不是个byte[]而是个hash表,我根本就没法工作!
各种语言都有其适应的用途而已
#3
C就是最适合我的工作的语言,它直接提供了对内存的大部分细节操作,但也不能说所有,一些Intel指令集一句机器指令提供的功能用C反而啰嗦一堆,这就是为什么汇编语言也还有其用武之地的原因,目前编译器对于SSE等高级指令的使用能力太差了
#4
我就是觉得自己C水平不够,实力不够。其实对于编程我有兴趣,而且浓厚,最近写驱动程序的时候嘛,感觉心有余而力不足,不对,心也不余。对于代码结构的掌控,也就是架构,对于部分语法的使用,我糊涂的很,逛了一天csdn,感觉低端的问题都没有太多。我纯粹一个很上进的小白。直到嵌入式对C要求蛮高,毕竟我还要进行一段时间的Linux的学习,如果C太差了,那就没办法了。所以没有安全感。
#5
看我就是C小白。编程都困难。想入门C,现在这样的状况,我觉得还有很大差距,不能随心所欲的使用C,先不看它的效果如何,很多东西我都没见过,更别说使用了。
#6
老老实实学语法,之后再谈别的
#7
经常有人说基础不好,要学C++,却不好好学习最经典的:The C Program Language。
C语言都没学好,整天玩弄类,模板,设计模式能把C++的效率与方便优势发挥出来?
C语言都没学好,整天玩弄类,模板,设计模式能把C++的效率与方便优势发挥出来?
#8
膜拜大牛啊
#9
有良方赐教……么
#10
单从语言上来说,C还是很简单的…………
没有什么特别复杂难以理解的概念,也没有隐藏太多的细节,不像C++
个人认为能够写出C程序后,再去看看C标准是有好处的
总的来说,语言只是工具,理解语言的关键在于知道每句语言会导致机器哪些动作
没有什么特别复杂难以理解的概念,也没有隐藏太多的细节,不像C++
个人认为能够写出C程序后,再去看看C标准是有好处的
总的来说,语言只是工具,理解语言的关键在于知道每句语言会导致机器哪些动作
#11
从编译的角度来说,SIMD支持差这板子打在编译器身上还真是不服啊
本来语言层面对SIMD支持就差,很多架构都是以C库加嵌入汇编的形式提供支持,编译器就算是巧妇也做不了这无米之炊啊
而且相比SIMD,MIMD才是目前编译器关注的主要方向…………
#12
计算机组成原理→DOS命令→汇编语言→C语言(不包括C++)、代码书写规范→数据结构、编译原理、操作系统→计算机网络、数据库原理、正则表达式→其它语言(包括C++)、架构……
#13
单从C语言这块,我觉得书太多。目不暇接、之前的都有学过,可能语法方面欠缺很多。
#14
今天浏览了很多大牛的论坛,感觉C标准必须看的。只是不知道最新的标准又没有中文版的。有些编译环境不同。
#15
目前学的嵌入式,以后可能做linux系统方面的。不过也想写底层驱动。我该怎么努力呢?
#16
C语言的书经典的也就一本,The C Program Languae。200多页,再慢的速度3个月也看完了。
其它: C专家,C和指针等书都是一些辅助。有时间就看,没时间不看也没关系。
等工作后真正有时间了再看也来得及。
如果是马上就要去找工作,建议突击看一下C和指针。
嵌入式Linux要学的东西就多了。
可以先学应用开发技能,再深入内核开发。
应用技能列表:
1> 常用linux命令使用
2〉git使用
3〉gcc与makefile编写
4〉shell编程与Perl
5〉Unix编程 (强烈推荐: Unix编程艺术)
6〉POSIX/SystemV API学习
7〉libc 接口学习
内核与驱动开发
1〉如何编译配置内核
2〉如何编译交叉编译工具
3〉如何阅读和调试linux内核
4〉驱动编写
5〉Rootfs系统构建
6〉相关硬件知识,如MTD/USB/PCI/I2C 等。
管理技能:
1〉如何做单体测试
2〉如何写概要设计和详细设计
3〉如何做技术PPT
4〉如何分配任务
5〉如何监督其他人的工作进度
6〉如何激励员工
7〉其他
其它: C专家,C和指针等书都是一些辅助。有时间就看,没时间不看也没关系。
等工作后真正有时间了再看也来得及。
如果是马上就要去找工作,建议突击看一下C和指针。
嵌入式Linux要学的东西就多了。
可以先学应用开发技能,再深入内核开发。
应用技能列表:
1> 常用linux命令使用
2〉git使用
3〉gcc与makefile编写
4〉shell编程与Perl
5〉Unix编程 (强烈推荐: Unix编程艺术)
6〉POSIX/SystemV API学习
7〉libc 接口学习
内核与驱动开发
1〉如何编译配置内核
2〉如何编译交叉编译工具
3〉如何阅读和调试linux内核
4〉驱动编写
5〉Rootfs系统构建
6〉相关硬件知识,如MTD/USB/PCI/I2C 等。
管理技能:
1〉如何做单体测试
2〉如何写概要设计和详细设计
3〉如何做技术PPT
4〉如何分配任务
5〉如何监督其他人的工作进度
6〉如何激励员工
7〉其他
#17
C99的中文版我手头没有,不过网上可能会有吧,不清楚来着
C11的话,我觉得应该是肯定没有中文版
#18
很清晰
#19
我是来学习的, 逛逛留个印. 方便以后查阅
#20
看看 深入理解计算机系统
#21
先解决 C 的 很多语法问题。嘿嘿