找回密码
 立即注册
搜索
查看: 13550|回复: 92

[科技] ffmpeg:新生代学编程还是推荐c语言

[复制链接]
头像被屏蔽
     
发表于 2024-3-10 13:09 来自手机 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

     
发表于 2024-3-10 13:14 来自手机 | 显示全部楼层
因为cpu模型没变
回复

使用道具 举报

     
发表于 2024-3-10 13:18 | 显示全部楼层
我也觉得是这样,用c语言学基础概念,然后再学Java,python事半功倍,不需要学的很精。
回复

使用道具 举报

     
发表于 2024-3-10 13:40 | 显示全部楼层
看从事啥吧,做底层的肯定逃不了c,应该不会有人从rust开始学编程吧
至于像做前端的做算法的,可能内存模型都搞不清楚也不用搞太清楚就无所谓咯
回复

使用道具 举报

     
发表于 2024-3-10 13:41 | 显示全部楼层
至少个人感觉早晚会遇到绕不过c的时候不如一开始就打好基础

  -- 来自 有消息提醒的 Stage1官方 Android客户端
回复

使用道具 举报

     
发表于 2024-3-10 13:43 来自手机 | 显示全部楼层
科班学c没毛病,半路转行追求效率就没意义了
回复

使用道具 举报

     
发表于 2024-3-10 14:09 | 显示全部楼层
bellard 大神的C语言和一般人的C语言不是一回事
回复

使用道具 举报

     
发表于 2024-3-10 14:16 | 显示全部楼层
学编程和学C是两件事情,不要追求一步到位,否则很容易两个都没学好
最开始学的编程语言不一定需要可以用很久,只需要能够建立一个 修改->使用 的正向循环就行了
从这个角度来看,一开始学个JavaScript或者bash什么的都比C强,关键是一开始就要有用,能够让人尝到甜头
用C就是自讨苦吃

评分

参与人数 1战斗力 +1 收起 理由
Swanfal + 1 这是真懂的

查看全部评分

回复

使用道具 举报

     
发表于 2024-3-10 14:24 | 显示全部楼层
r_ex 发表于 2024-3-10 14:16
学编程和学C是两件事情,不&#x ...

也不是。学c讲究基础要扎实,越学会越顺利
如果跳过计算机原理和操作系统,再不幸用谭浩强的教材,那是学不会
回复

使用道具 举报

     
发表于 2024-3-10 14:27 | 显示全部楼层
精钢魔像 发表于 2024-3-10 14:24
也不是。学c讲究基础要扎实,越学会越顺利
如果跳过计算机原理和操作系统,再不幸用谭浩强的教材,那是学 ...

对啊,但是给中学生(新生代)学计算机组成原理与体系结构和操作系统,这不科学
回复

使用道具 举报

     
发表于 2024-3-10 14:31 | 显示全部楼层
r_ex 发表于 2024-3-10 14:27
对啊,但是给中学生(新生代) ...

中学生还太早了,先学高考会考的吧
回复

使用道具 举报

     
发表于 2024-3-10 14:32 | 显示全部楼层
如果学了不用很快就会忘记,那么C能用在什么地方?能像JS一样写网站吗?
回复

使用道具 举报

     
发表于 2024-3-10 14:32 来自手机 | 显示全部楼层
赤星ビスコ 发表于 2024-3-10 13:40
看从事啥吧,做底层的肯定逃不了c,应该不会有人从rust开始学编程吧
至于像做前端的做算法的,可能内存模型 ...

我看到是ucla还是哪个大学有学c可以选择同时修rust的配套课程,其实还挺科学的。非c背景的学rust经常不理解borrow checker,觉得很多余,但c/c++写得越久反而越能理解发明这套东西是要干嘛。

— from Sony XQ-DQ62, Android 14 of S1 Next Goose v2.5.2-play
回复

使用道具 举报

发表于 2024-3-10 14:36 | 显示全部楼层
c家族的语言一通百通,本来也不用学很深。
回复

使用道具 举报

     
发表于 2024-3-10 14:36 | 显示全部楼层
拜拜 发表于 2024-3-10 14:32
如果学了不用很快就会忘记,那么C能用在什么地方?能像JS一样写网站吗?

需要ffmpeg的地方都能用吧
回复

使用道具 举报

     
发表于 2024-3-10 14:45 来自手机 | 显示全部楼层
确实没错,你要是想学的通透就避免不了c。啃linux内核就得会c。

只是c往高级走,出来glib,gtk这些东西,没必要不用学。
回复

使用道具 举报

     
发表于 2024-3-10 14:51 来自手机 | 显示全部楼层
循此苦旅 发表于 2024-3-10 14:36
需要ffmpeg的地方都能用吧

那只需要用ffmpeg的相应api就行了。
除非你用的框架的语言就是c,那确实是要c语言。比如用gstreamer的话,就要会glib,就一帮不想用c++的人搞出来的类c++的c库。
回复

使用道具 举报

     
发表于 2024-3-10 15:01 | 显示全部楼层
它引用推文的重点是relevant,即未来20年都重要或者有价值,而不是什么语言适合新人上手吧,这方面C语言当然首屈一指
回复

使用道具 举报

     
发表于 2024-3-10 15:08 | 显示全部楼层
其实按现代的生活技能,计算机还是得纳入高考
回复

使用道具 举报

     
发表于 2024-3-10 15:09 | 显示全部楼层
c语言的void*太恐怖了

评分

参与人数 1战斗力 +1 收起 理由
longlivetk + 1 这是自由!

查看全部评分

回复

使用道具 举报

     
发表于 2024-3-10 15:10 | 显示全部楼层
C其实是很适合新人的语言,既不会像汇编过于底层,又不会过于抽象,虽然功能强但核心关键字和语法并不复杂,版本迭代不激进,ABI不会特别碎,学会了再转行so easy
回复

使用道具 举报

     
发表于 2024-3-10 15:12 | 显示全部楼层
weiyang 发表于 2024-3-10 15:01
它引用推文的重点是relevant,即未来20年都重要或者有价值,而不是什么语言适合新人上手吧,这方面C语言当 ...

但是除了新人上手的语言,其他的语言一般不需要"teach"吧,自己看看文档看看例子就会了
感觉这里倾向性比较明显,也就是因为ffmpeg是用C写的,要是用Rust写的可能就不这么说了
回复

使用道具 举报

     
发表于 2024-3-10 15:13 | 显示全部楼层
能借楼问一下,写了保护的正版dvd有办法用ffmpeg导出视频文件么
回复

使用道具 举报

     
发表于 2024-3-10 15:33 | 显示全部楼层
如果时间充裕个人认为还是从正反馈比较强很快就能上手自己做些小玩意的语言学起来好
回复

使用道具 举报

     
发表于 2024-3-10 15:45 | 显示全部楼层
帆影FX 发表于 2024-3-10 15:09
c语言的void*太恐怖了

频繁用到这一步的,想必不是技术主管也是资深码农了?!
回复

使用道具 举报

     
发表于 2024-3-10 15:48 | 显示全部楼层
r_ex 发表于 2024-3-10 15:12
但是除了新人上手的语言,&# ...

你能开发ffmpeg、qemu,说的我更信服一点
回复

使用道具 举报

     
发表于 2024-3-10 15:48 来自手机 | 显示全部楼层
本帖最后由 御坂MKII 于 2024-3-10 15:53 编辑

和go对比想了想,感觉就是缺一个现代化的包管理工具。cmake 肯定还不够现代化,还是会有需要 third_party 这个文件夹目录的情况

哦对 c 现在还没泛型,和 go 比又缺语法特性了。那我宣布还是golang最足够傻瓜顺带还能教育人由开发者手动管理内存对于性能的必要性和某些情况下语言特性太过贫瘠会出现啥问题

—— 来自 Xiaomi 24031PN0DC, Android 14上的 S1Next-鹅版 v2.5.4
回复

使用道具 举报

发表于 2024-3-10 15:49 | 显示全部楼层
学算法数据结构肯定是要学c的
回复

使用道具 举报

     
发表于 2024-3-10 15:54 | 显示全部楼层
这本书K&R,我觉得是最晦涩最难看的,真的是惜字如金
回复

使用道具 举报

     
发表于 2024-3-10 16:00 来自手机 | 显示全部楼层
御坂MKII 发表于 2024-3-10 15:48
和go对比想了想,感觉就是缺一个现代化的包管理工具。cmake 肯定还不够现代化,还是会有需要 third_ ...

有的,就用void*  g_pointer。
包管理用makefile里面的通配符和正则表达式。
回复

使用道具 举报

发表于 2024-3-10 16:01 | 显示全部楼层
C语言没有吉祥物,不学。
回复

使用道具 举报

     
发表于 2024-3-10 16:11 | 显示全部楼层
laotoutou 发表于 2024-3-10 16:00
有的,就用void*  g_pointer。
包管理用makefile里面的通配符和正则表达式。

用makefile真不现代吧
回复

使用道具 举报

     
发表于 2024-3-10 16:15 来自手机 | 显示全部楼层
不管怎么学,学什么,c 都是不倒的
顺便一说我使用 llvm (i use llvm btw) llvm 太牛逼了
回复

使用道具 举报

     
发表于 2024-3-10 16:27 | 显示全部楼层
御坂MKII 发表于 2024-3-10 15:48
和go对比想了想,感觉就是缺一个现代化的包管理工具。cmake 肯定还不够现代化,还是会有需要 third_ ...

go的那个泛型语法啊,真是一言难尽。
回复

使用道具 举报

     
发表于 2024-3-10 16:45 来自手机 | 显示全部楼层
本帖最后由 gammatau 于 2024-3-10 16:51 编辑
whzfjd 发表于 2024-3-10 13:14
因为cpu模型没变

怎么说呢,我感觉浅尝c用不上计算机原理,深度c和c艹那计算机原理里教的东西早就跟现代操作系统脱节了。
回复

使用道具 举报

发表于 2024-3-10 16:46 | 显示全部楼层
الطائر 发表于 2024-3-10 16:01
C语言没有吉祥物,不学。

Python的吉祥物,孩子会害怕,不学。
LISP的吉祥物,孩子会掉SAN,不学。
Go语言的吉祥物,看起来笨笨的样子,不学。
Rust的吉祥物,已经煮熟了,不学。

评分

参与人数 2战斗力 +2 收起 理由
Marins + 1 哈哈哈哈哈
bwjsif + 1 欢乐多

查看全部评分

回复

使用道具 举报

     
发表于 2024-3-10 17:25 | 显示全部楼层
我觉得应该自顶向下学,先找个高级语言学会编程基础,再深入底层了解实现。对此我是赞同垠神那套计算机入门课的思路的
回复

使用道具 举报

     
发表于 2024-3-10 17:32 来自手机 | 显示全部楼层
汇编本质是一路依赖地址跳转的,所以很多问题的解决方案,要绕开指针是不现实的,哪怕到了plc上,st语言也没有扔掉指针,因为很多复杂的情况,光靠引用解决不了问题

makefile和包管理的问题和c有啥关系,c只是语言。。。

—— 来自 Xiaomi 23117RK66C, Android 14上的 S1Next-鹅版 v2.5.2
回复

使用道具 举报

     
发表于 2024-3-10 17:41 来自手机 | 显示全部楼层
我推荐任何以写代码为主业的人深入学习c++,哪怕不用

—— 来自 OnePlus PJD110, Android 14上的 S1Next-鹅版 v2.2.2
回复

使用道具 举报

发表于 2024-3-10 17:52 | 显示全部楼层
henvelleng 发表于 2024-3-10 17:32
汇编本质是一路依赖地址跳转的,所以很多问题的解决方案,要绕开指针是不现实的,哪怕到了plc上,st语言也 ...

PLC这玩意取决于厂商, 编程语言完全没指针的实现也有的。

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2024-6-16 07:21 , Processed in 0.317004 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表