| |
今日学习任务
|
学习嵌入式系统的基本操作 |
今日任务完成情况
(详细说明本日任务是否按计划完成,开发的代码量) | 1、学习了嵌入式操作系统的基本分类 2、学习了10-20个基本命令 3、学习了Linux的开发工具,了解到什么是gcc,什么是交叉编译器,为什么需要交叉编译器 4、知道了源文件到可执行文件需要经历预处理、编译、汇编、链接这四个步骤 5、知道了预处理、编译阶段分别是做什么工作的 6、学习了如何进行编译和汇编 7、学习了如何制作静态库和动态库 |
今日开发中出现的问题汇总
|
在进行的编译的过程中,经常会出现路径选择错误的问题,并且对命令的操作还不是那么熟悉 |
今日未解决问题
|
无 |
今日开发收获 |
对嵌入式操作系统有了基本的了解,能实现基本的操作 |
自我评价
(是否按开发规范完成既定任务,需要改进的地方,与他人合作效果等)
|
能跟上老师的脚步,及时的做好笔记 但是还需要对讲的知识进行巩固和复习,不然忘得太快了 |
其他
| 无 |
基本程序:
用c语言输出1-100之间的素数
#include <stdio.h>
int main()
{
int i, j;
for (i = 2; i < 100; ++i)
{//2-100控制循环
//判断素数
for (j = 2; j*j <= i; ++j)
{//2-sqrt(i)循环控制
if (i % j == 0)break;//如果能整除,说明不是素数,跳出循环
}
if (j*j > i)
{//如果没有能整除的数,说明是素数,输出
printf ("%d\n", i);
}
}
return 0;
}
创建静态库和动态库:用main.c、add.c、sub.c这三个程序实现
main.c
#include<stdio.h>
int main()
{
printf(“add=%d\n”,add(6,3));
printf(“sub=%d\n”,sub(6,3));
}
Add.c
int add(int a,int b)
{
return a+b;
}
Sub.c
int sub(int a,int b)
{
return a-b;
}
静态库编译执行方法:
gcc -c add.c
gcc -c sub.c
ar rcs libcal.a add.o sub.o
gcc main.c -lcal -L.
动态库编译方法:
gcc -shared -fPIC -o libcal1.so add.c sub.c
gcc main.c ./libcal1.so -o main
./main