本人材料本硕出身,虽然在硕士期间接触过machine learning等课程以及计算材料方面的洗礼。但是对于C语言一直缺少一个系统的学习。毕业后在一家整车厂做BMS方面的研发,一直以来困惑于这种嵌入式系统的底层开发。
在BMS控制器的开发中,普遍在应用层使用simulink搭建模型后自动集成软件,所以应用层所需更倾向于对行业的了解。但是本人在观察公司模型时,发现上传到应用层的各个接口信号,其实是由底层提供,当开发中遇到了UDS开发等底层问题时,完全看不懂底层的代码。虽然对于一个系统工程师来说最多就是看看模型,不会亲自去敲C代码,但是这方面知识的匮乏让我在跟他人尤其是供应商们的辩论中吃到了亏,尤其是当底软工程师没有按我要求开发却还在嘴硬但是我又说不出他的代码哪里不对时。
本着说不过就要回去好好学习正确下次说死他人的想法,我决定在这个阶段自行学习入门C语言,主要参考B站上谭浩强的课。在这里我对课上学到的内容进行总结用于自我复习以及分享。废话到此,下面是第一天的学习:
DAY1
//*********************************************************part1 写代码******************************************************************************
//写出主函数(main函数)
//C代码从主函数第一行开始执行,所以C语言代码需要主函数
//一个工程中有且仅有一个main函数
//想要写一个代码,在屏幕上打印:大大大,需要用到printf函数。
//printf-库函数-打印信息
//使用库函数需要调动库(引用头文件stdio.h),使用iclude<stido.h>最后可以得到以下代码
#include<stdio.h>
int main()
{
printf("大大大\n\n\n\n");
return 0;
}
//运行代码:ctrl+f5
// or ctrl+fn+f5
// \n为换行
最后得到的就是下图
//*********************************************************part2 数据类型*****************************************************************************
// double-双精度浮点数
// float-单精度浮点数
// long long-更长的整型
// long-长整型
// int-整型
// short-短整型
// char-字符数据类型
//int main()
//{
// //字符类型
// char ch = 'a';
// //整型
// int age = 20;
// short num = 10;
// //long
// //long long
// //单精度浮点型
// float weight = 55.5;
// //双精度浮点型
// double d = 0.0;
//
// return 0;
//}
//研究每种函数的大小
int main()
{
printf("hehe\n");
printf("大哥\n");
printf("%d\n", 100);//print a integer
//sizeof-关键字-操作符-计算类型或者变量所占空间大小
printf("%d\n", sizeof(char));
printf("%d\n", sizeof(short));
printf("%d\n", sizeof(float));
printf("%d\n", sizeof(double));
return 0;
}