1    愉快的开端hello world    4

1.1    include头文件包含    4

1.2    main函数    4

1.3    注释    4

1.4    {}括号,程序题和代码块    4

1.5    声明    4

1.6    C语言自定义名字的要求    4

1.7    printf函数    4

1.8    return语句    5

1.9    System系统调用    5

1.9.1    System返回值在windows和unix下的不同,    5

1.9.2    POSIX    5

1.10    C语言编译过程,gcc参数简介    5

1.10.1    C语言编译过程    5

1.10.2    -E预编译    5

1.10.3    -S汇编    6

1.10.4    -c编译    6

1.10.5    链接    6

1.11    操作系统结构    6

1.11.1    用户模式    6

1.11.2    内核模式    6

1.12    64位,32位系统区别    7

1.12.1    CPU内部结构与寄存器    7

1.12.2    RISC与CISC CPU构架    7

1.12.3    SPARC,x86与ARM    7

1.13    汇编语言    7

1.13.1    I386汇编简介    7

1.13.2    VS反汇编    8

1.14    IDE工具    8

1.14.1    QT常用快捷键    8

1.14.2    Eclipse常用快捷键    8

1.14.3    VS常用快捷键    8

1.14.4    VS断点,调试    9

  1. 愉快的开端hello world

    1. include头文件包含

对于C语言,所有的库函数都需要include相关的头文件

  1. main函数

所有C语言的程序必须有一个main函数,也只能有一个main函数,这是c语言程序的入口

  1. 注释

/* */块注释

// 行注释

  1. {}括号,程序题和代码块

C语言所有的执行代码,必须再{}内部,

  1. 声明

  1. C语言自定义名字的要求

可以使用大小写字母,下划线,数字,但第一个字母必须是字母或者下划线

字母区分大小写

  1. printf函数

printf函数的功能并不仅仅是向屏幕输出,而是向标准输出设备输出

  1. return语句

main遇到return就结束了,所以rerurn下面的语句就没有执行的机会了,return的返回值是与main函数定义的时候返回值一致的,如:void main (),那么return也应该没有返回值,int main(),renturn就应该返回一个整数

  1. System系统调用

    1. System返回值在windows和unix下的不同,

WEXITSTATUS:linux下得到main函数的返回值

Windows下不需要调用WEXITSTATUS

  1. POSIX

在windows下程序,很多函数是不符合posix标准的,对于不符合posix标准的函数,移植很难。

  1. C语言编译过程,gcc参数简介

    1. C语言编译过程

  1. -E预编译

  1. -S汇编

  1. -c编译

  1. 链接

  1. 操作系统结构

    1. 用户模式

普通程序都是运行才用户模式下

  1. 内核模式

操作系统内核,驱动程序都是运行在内核模式下的

  1. 64位,32位系统区别

    1. CPU内部结构与寄存器

  1. RISC与CISC CPU构架

RISC:精简指令集

CISC:复杂指令集

  1. SPARC,x86与ARM

  1. 汇编语言

    1. I386汇编简介

int a;//定义一个变量a

int b;//定义一个变量b

int c;//定义一个变量c

a = 1;//a赋值1

b = 2;//b赋值2

c = a + b;//c赋值a + b

__asm

{

mov a, 1

mov b, 2

mov eax, a

add eax, b

mov c, eax

}

printf("c = %d\n", c);

  1. VS反汇编

VS源代码加入断点,执行到断点程序停止之后,选择调试菜单-》窗口-》汇编就可以看到汇编指令

  1. IDE工具

    1. QT常用快捷键

Ctrl + r:编译执行

Ctrl + b,编译,不执行

Ctrl + i;格式化代码

Ctrl + /;块注释代码

  1. Eclipse常用快捷键

Ctrl + shift + f;自动格式化代码

Ctrl + /;批量注释

  1. VS常用快捷键

Ctrl + D,格式化代码

F9:加入断点

  1. VS断点,调试

Helloworld代码如下:

#include <stdio.h>
#include <stdlib.h>

//int printf (__const char *__restrict __format, ...);//声明一个函数,名字叫printf

int age; //定义一个变量,执行语句只能放到{}中间

//int  main()//这个函数有可能有参数,也有可能没有参数,到底有没有,我也不知道
//int main(),main(void)//对于C++来讲,()和(void)道理是一样的
//void main()这种写法在C++下是不可以的
int main01() //这个函数一定没有参数,
{
 age = 10;
 /*
  我是个小白,
  希望能学会C语言,找个好工作
  娶个好老婆
  生一堆娃
  */
// 这是新的注释方法
// printf("AAAAAAA\n");
// 又一个行
 printf("!!!Hello World!!!\n");
 printf("hello");/* 这是打印的语句 */
 ;
 {
  ; //printf("hello");
 }

}

int main02()
{
 //system("gedit a.txt");
 system("ls");
 return 0;
}

int main()
{
 printf("hello wlord\n");
 return 250;
}



C语言基础课程 第二课 HelloWorld不为菜鸟所知的秘密的更多相关文章

  1. C语言基础课程 第一课 Linux环境配置小实战httpserver

     网段我需要改成如下 10.重启网络服务 并且查看ip 11. 打开windows的浏览器数人Linux的IP地址出现REDHAT的欢迎界面 11.进入目录 12.编写一个简单的html脚本 13 ...

  2. C语言基础课程 第三课 ADB(Android Debug Bridge)的使用

     由于前面已经发布过Linux的博客了 基础班将Linux基础命令就不单独发表博客了,本节课主要就是利用adb连接手机进行一个Linux基本命令的复习.而且熟悉手机的底层运作,不用界面操作照样也能 ...

  3. C语言基础课程 第四课 它山之石可以攻玉---C语言数据类型和表达式

     1         C语言中的数据类型 1.1      常量 常量就是在程序中不可变化的量 1.1.1         #define #define MAX 10 Define;//定义了一 ...

  4. 01-JAVA语言基础——课程作业1—编写一个程序,此程序从命令行接收多个数字,求和之后输出结果。

    1.题目:编写一个程序,此程序从命令行接收多个数字,求和之后输出结果. 2.程序设计思想: 通过运行配置输入数字后,其保存类型为String类型,因此需要采用Integer.valueOf(arg)将 ...

  5. 【C语言探索之旅】 第二课:工欲善其事,必先利其器

    内容简介 1.课程大纲 2.第一部分第二课:工欲善其事,必先利其器 3.第一部分第三课预告:你的第一个程序 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C ...

  6. 【C语言探索之旅】 第三部分第二课:SDL开发游戏之创建窗口和画布

    内容简介 1.第三部分第二课: SDL开发游戏之创建窗口和画布 2.第三部分第三课预告: SDL开发游戏之显示图像 第三部分第二课:SDL开发游戏之创建窗口和画布 在上一课中,我们对SDL这个开源库做 ...

  7. 【C语言探索之旅】 第二部分第二课:进击的指针,C语言的王牌!

    内容简介 1.课程大纲 2.第二部分第二课: 进击的指针,C语言的王牌 3.第二部分第三课预告: 数组 课程大纲 我们的课程分为四大部分,每一个部分结束后都会有练习题,并会公布答案.还会带大家用C语言 ...

  8. 【Web探索之旅】第二部分第二课:服务器语言

    内容简介 1.第二部分第二课:服务器语言 2.第二部分第三课预告:框架和内容管理系统 第二部分第二课:服务器语言 介绍了Web的客户端,我们来谈谈Web的服务器端. 既然客户端有客户端的编程语言(HT ...

  9. 第二十四节:Java语言基础-讲解数组的综合应用

    数组的综合应用 // 打印数组 public static void printArray(int[] arr) { for(int x=0;x<arr.length;x++) { if(x!= ...

随机推荐

  1. iOS viewController 和 view 的创建消失生命周期总结

    控制器创建的生命周期 1. 如果从stroryBoard 中产生一个controller,那么会先调用initWithCoder:, awakeFromNib, loadView,viewDidLoa ...

  2. js多行字符串

    最基本的做法是: js 代码 var str = "111\n222\n333"; 但是这样不好排版.JavaScript 本身支持“\”的断句方式,于是可以这样写: js 代码 ...

  3. 如何使用node中的buffer

    介绍:Buffer类是一个全局类,是一个比较罕见不需要require( ‘buffer’ )就可以使用的类,Buffer类似与数组也有length, 它里面的元素为16进制的两位数,即 0-255的数 ...

  4. 关于c++中的引用

    引用是个别名. 1.引用是否占用空间 引用是否占用空间,此处是指广义上的占用内存空间,即为该对象新开辟一块内存.这个需要分不同的情况. 首先看一下常引用(const 引用). 这里关于常引用在c++  ...

  5. Datum Form Goole Android

    1. <TurboChargeYourUI-How to make your AndroidUI fast and efficient> 2. <The World of List ...

  6. iOS英文 汉化,如调用相册,相机改“cancel”,“photos”为“取消”,“相机”

    调用系统相册.相机发现是英文的系统相簿界面后标题显示“photos”,但是手机语言已经设置显示中文,纠结半天,最终在info.plist设置解决问题. 只需要改三个地方: 1.plist文件中: 2. ...

  7. 刚接触js不久,自己写的banner幻灯片效果。

    对于我这种菜鸟来讲,刚接触项目.叫我用插件,其实我说插件太臃肿不想用,倒不如说我是看不懂那些插件...- -(更愿意自己写点看得懂的代码,顺便也是个学习的过程) 所以自己花了些时间,自己来写了个dem ...

  8. 面试后 follow up letter 分享

    分享一下最近面试外企的follow up letter. Dear Mr. Xu,     Thank you again for the time you and Mr. Guo spent wit ...

  9. 自定义Excel导出简易组件

    1.组件原理 excel的数据存储是以xml格式存储的,所以导出Excel文件可以通过生成XML来实现.当然XML必须符合一定的格式要求. 2.组件实现 (1)新建类库文件“MyExcel” (2)添 ...

  10. java中的异常结构

    1.基类为Throwable. 2.Error和Exception分别继承Throwable. 3.Error类异常描述了Java运行系统中的内部错误以及资源耗尽的情形.应用程序不应该抛出这种类型的对 ...