哈佛大学公开课:计算机科学cs50 学习笔记(第3集:C语言,编译器)
1. 编译器 Compiler
将代码文本按照ASCII码转换为二进制文件
Linux 下用 gcc 或者 g++ 编译器
gcc hello.c 默认在当前路径下生成 a.out 可执行文件,运行a.out:./a.out ./ 表示a.out 在当前路径下
若要改变生成可执行文件的名字,则可以 gcc -o hello hello.c
可以了解gcc 其他的命令参数
也可以直接 make hello, 效果与gcc -o hello hello.c 相同
简化gcc编译的方法:Cmake工具,配置CMakeLists.txt文件
2. ssh 命令
SSH是一种网络协议,用于计算机之间的加密登录。如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会泄露。
用法:$ ssh user@host 如:ssh pika@192.168.0.111
3. C语言中的转义字符
4. Linux中常用的命令
ls
cd
等
5. C语言中的数据类型
字符串方面,不同于C++,C语言没有string类型,用的是C风格字符串,用字符数组表示字符串。
6. C语言的运算符优先级
不需强记,拿不准就加括号,也有助于可读性。
7. 关于未定义的引用“undefined reference...”这一报错
可能是没有添加库, 或者是CMakeLists.txt 中没有 将含有相关定义的 源文件 .c / .cpp 添加进可执行文件。
添加库:
gcc 命令可用 -l
若用的Cmake则在CmakeLists.txt中配置:link_directories(), target_link_libraries()
将含有相关定义的 源文件 .c 添加进可执行文件:
add_executable (projectname main.cpp function.cpp)
哈佛大学公开课:计算机科学cs50 学习笔记(第3集:C语言,编译器)相关推荐
- 哈佛大学公开课:计算机科学cs50 学习笔记及代码练习(第8集:冒泡,选择排序,递归)
0. 前言 这门课讲的排序相当清楚,老师用很容易懂的方式讲原理,代码部分在linux下写,用gdb调试,这才是编程的学习方法.记得以前国内本科也学过,但根本没讲清楚.现在研究生又听这门公开课,发现把原 ...
- Open SAP 上 SAP Fiori Elements 公开课第一单元学习笔记
Open SAP 课程地址 这门公开课的教学大纲: 第一单元:Painting the big picture 本课程将使用 SAP Fiori Elements 开发一系列的应用,如下图所示: Th ...
- 吴恩达机器学习公开课第一周学习笔记
Octave是一种编程语言,旨在解决线性和非线性的数值计算问题.Octave为GNU项目下的开源软件,早期版本为命令行交互方式,4.0.0版本发布基于QT编写的GUI交互界面.Octave语法与Mat ...
- 哈佛大学公开课:计算机科学cs50 学习笔记(第2集:数据表示与存储)
视频网址:http://open.163.com/special/opencourse/cs50.html 1. 数据在计算机中的表示与存储 日常生活中用的是10进制数,如: 位 3 2 1 0 权重 ...
- 哈佛大学公开课:计算机科学cs50 学习笔记(第7集:数组,其它)
1. 一个语法糖 string s1 = (i==1)? "bottle" : "bottles"; 代替if -else 2. 预处理宏定义 例如:#def ...
- 哈佛大学公开课:计算机科学cs50 学习笔记(第6集:C语言,RAM)
1. 关于变量对内存的使用 #include <stdio.h>void swap(int, int);int main(void) {int x = 1;int y = 2;swap(x ...
- 哈佛大学公开课:计算机科学cs50 学习笔记及代码实现(第9集:归并排序)
用递归算法实现归并排序 伪代码如下: if n < 2 return; else sort left half of elements; sort right half of elements; ...
- 哈佛大学公开课:计算机科学cs50 学习笔记(第4~5集:C语言,编译器)
1. fflush()函数 此函数包含在stdio.h头文件中,用来强制将缓冲区中的内容写入文件. 函数原型:int fflush(FILE *stream) ; 函数功能:清除一个流,即清除文件缓冲 ...
- 哈佛大学公开课:计算机科学cs50 学习笔记(第12集:单链表,内存分配)
1. 数组的优缺点 数组元素是连续的存储在有限的内存里,这样有两个缺点: --数组的大小是有限的.如果需要给数组的内存(缓冲区buffer)扩容,需要调用realloc()函数.realloc()的工 ...
最新文章
- 管理大师基本功:目标拆解能力
- How to Delete and Recreate the _msdcs DNS zone on a Windows DNS Server
- 喜报丨神策数据荣获“2021 年度金屏奖大屏应用创新奖”
- oc58--Category注意事项
- url充定向 html转义,html、javascript、url特殊字符的转义诠释及使用方法详解
- c#入门经典笔记第十章
- Python 装饰器学习以及实际使用场景实践
- 1-5分层API(Layered APIs)
- 用指针比较三个数大小_《测量力的大小》教案
- asp.net 自带 ajax,ASP.NET AJAX
- 硬件工程师成长之路(4)——元件焊接
- Canvas实现太极图案并旋转
- 白帽黑客必备的15个技能点
- promise的意义和用法
- 缺失值处理的三种方法
- 在outlook上邮件可以撤回?邮件撤回成功后对方还能看到吗?
- Excel编程环境搭建
- 老照片怎么修复?模糊照片如何变清晰?试试这些方法
- 骏马淘金~~网赚不走弯路
- 据实而用 浅析会议摄像机的选购
热门文章
- ascii 0xe3
- NYoj_171聪明的kk
- 大学计算机基础知识教程ppt,大学计算机基础教程课件 (18).ppt
- Minimum Snap轨迹规划详解(3)闭式求解
- 如何编写绩效改进计划
- poj1734 最小环
- 超薄广告灯箱的导灯板如何清洁?
- android 专业相机软件,安卓专业相机软件FV-5使用教程
- MC9S12XE 内存分配
- 【MATLAB】三维图形绘制 ( 绘制球面 | sphere 函数 | 设置光源 | light 函数 | 相机视线 | view 函数 )