简单列举几点吧:
1)shell变量没有固定类型,你可以给一个变量一会儿赋值为一个整数,一会儿赋值为一个字符串,都没关系;c程序变量需要在定义时明确指定类型,不同类型间需要做类型转换。
2)由于shell程序是逐行按次序解释执行的,函数定义必须写在函数调用的前面;而C程序不必,在文件开头加上函数申明即可。
3)相同的地方也有。作为编程语言,都有逻辑控制结构,如if语句、switch语句、while循环语句等。都有退出状态返回值。
总之,一个是脚本语言,一个是高级语言;一个是解释执行,一个是编译后执行。有天壤之别,没法比。
偶擦。那可多了。你自己拿本书自己对着看吧。
而且不同shell写法也有出入。你要对比那种shell啊。
c关注怎么算(算法)
shell关注怎么用(用法)
所以,就算是相同的语法,用来解决的也不是一码事,
可以简单认为,c写单一功能的工具,shell把这些工具串联起来。