002-IDE的使用与数据类型-C语言笔记

/ 1

认识IDE和Xcode

IDE 就是集成开发环境的简称。集成开发环境就是集成了开发软件需要的环境、开发工具、插件等等各种功能的一个软件。Xcode 是苹果公司推出的一款专门开发 macOS 和 iOS 系统上的软件的集成开发工具。

Xcode常用功能

1.一键编译、链接、运行,再也不用苦逼的去执行 cc 命令来手动的编译、链接、运行了。

2.自动语法检查,在 Xcode 中写代码的时候,Xcode 会实时检查我们写的代码是否符合语法规范,如果不符合会以红色的叹号标注,当我们单击叹号的时候还会显示错误的原因和建议的修改方式。

3.代码智能提示,我们只需要敲出单词的前几个字母,Xcode 会自动提示剩余的内容。

4.关键字高亮,在代码中代表不同功能的单词以不同的颜色显示,一目了然。

5.代码自动缩进,使我们的代码看起来更加有层次感。

6.代码调试,99% 的 Bug 我们都可以通过调试找到。

7.功能强大的团队开发功能。

...

Xcode的安装

第一种方式: 使用 macOS 系统的 AppStore 搜索 Xcode 点击下载安装,这样将自动在你的系统上。

QQ20150731-3

第二种方式:直接在网上搜索下载 .dmg 格式的安装包安装即可。

无论是采用哪种方式安装,当安装成功后,你都可以在 Applications 目录中找到已经安装好的 Xcode 程序并打开。

QQ20150731-4

使用Xcode快速开发C程序

1414

依次点击 Create a new Xcode project - Application - Command Line Tool

1515

在弹出来的窗口中,设置项目的一些必要信息

1616

当项目的必要信息设置完成以后,点击 Next 按钮进入下一步操作。这个时候会让你选择项目存储的路径。

1717

选择你希望存储项目的路径后,点击 Create 按钮创建项目.,你就可以看到 Xcode 的工作界面。

1818

C程序的入口和运行流程

程序执行流程:不是从上到下依次执行所有代码,而是先找到 main 函数,然后依次执行 main 函数中的代码,直到遇到 return 结束 main 函数。

注意:C 程序的入口是 main 函数,一个完整的 C 程序想要被执行,有且只能有一个 main 函数。

#include <stdio.h>

int test(){
    //这行代码不会被打印
    printf("这里是代码0\n");
    return 0;
}

//main函数是C程序的入口
int main() {
    printf("这里是代码1\n");
    printf("这里是代码2\n");
    printf("这里是代码3\n");
    return 0;
}

int test1(){
    //这行代码也不会被打印
    printf("这里是代码4\n");
    return 0;
}

变量的声明和赋值

变量就是可变化的量!第一次给变量赋值叫变量的初始化,后面再重新为变量赋值,就会覆盖掉原先的值。

声明一个变量,就是在内存中申请一块字节空间,并给空间取个别名,这个别名就叫变量名。

int a;

给变量赋值,就是储存数据到变量中。

int a;
a = 10;//为int类型的变量a赋值10

注意:每条语句末尾都要加半角分号,也就是英文状态下的分号,并且如果要为变量赋值,必须先声明变量才能为变量赋值。

变量重复赋值。

#include <stdio.h>

int main() {
    int a;  //声明一个int类型的变量,变量名为a
    a = 10; //给变量a赋值10
    a = 20; //重新给a赋值20
//    b = 10; //这是错误的,没有声明变量b
    return 0;
}

变量的命名规范

命名规则

1.只能使用字母、数字、下划线、美元符号为变量命名,不能使用其他字符。

2.不能以数字开头。

3.不能和 C 语言关键字同名。

4.要遵守命名规范。

命名规范

1.做到见名知意,就是看到变量名就能大概猜出这个变量是有什么用。

2.使用驼峰命名法,就是多个单词就第一个首字母小写,其他首字母大写的命名方法。

3.使用前缀加 _ 的方式命名一些功能差不多的变量。

#include <stdio.h>

int main() {
    //定义一个int类型的变量,用来存储我的年龄,并赋值20
    int myAge = 20;

    //这种写法是极度不规范的,新人应该避免
    int a = 20;

    return 0;
}

注释

注释就是对代码的解释说明或者调试程序让代码不起作用,并且注释不会被编译器编译。一般注释分为单行注释多行注释

单行注释:// 注释内容

多行注释:/* 注释内容 */

快速注释多行代码:选中要注释的代码按快捷键 command + /,就可以快速注释选中的多行代码,再次执行的话会去掉注释。

#include <stdio.h>

int main() {

    //这里是单行注释
    //int myAge = 20;

    /*
    这里是多行注释
    printf("来吧,注释我吧!\n");
    printf("来吧,注释我吧!\n");
    printf("来吧,注释我吧!\n");
    printf("来吧,注释我吧!\n");
    */
    return 0;
}

printf函数的使用注意

作用:向控制台输出信息。

语法:printf("格式控制字符串",变量列表);

常用占位符

符号 描述
%d 输出 int 类型变量的值
%f 输出 float 类型变量的值
%lf 输出 double 类型变量的值
%c 输出 char 类型变量的值

printf函数高级用法

%md:m 是1个整数,表示输出的数据占多少位。如果 m 大于实际的位数,不足的位数就以空格补齐。如果 m 小于或者等于实际的位数,那么就实际有多少为就输出多少位。m 如果是正数就在左边补空格,如果 m 是负数就在右边补空格。

%0md:和上面一样,只不过不足的位数以0补齐。

%f%lf:输出小数点后面的6为小数。

%.nf%.nlf:n 是1个整数,表示输出小数点后面多少位。

%m.nf%m.nlf:m 是1个整数,表示输出的数据占多少位,包括小数点。

#include <stdio.h>

int main(int argc, const char * argv[]){
    float f1 = 11.111111111111f;
    float f2 = 11.11111f;
    float f3 = f1 + f2;
    printf("f1 = %.10f\n",f1); //表示输出小数点后10位,不过float类型的有效位数就只有7位
    return 0;
}

基本数据类型

不同数据类型在不同编译器下所占的字节空间不同,我们现在用的 macOS 都是64位的操作系统,所以编译器也是64位的。

14152549-b92c48dad25647be8c3b0b0b9d7ca0ea

C 语言中的基本数据类型就4个,charintfloatdouble

其他书上写的 shortlong 也当做基本数据类型,其实他们都是修饰符,用于修饰 intdouble 的。

short int num = 10; //这里是定义了一个被 short 修饰的 int 类型的变量 num。其他同理

注意

1.char 类型是最小的数据类型单位,在任何类型的编译器下都是占用1个字节,char 类型的变量赋值可以直接赋值等于某个字符也可以赋值为整数(对应的 ASCII 值)。

2.可以使用两个 long 来修饰一个整形(就是经常使用的8字节的整形 long long),但是两个 long 不能修饰 double 而且也不存在两个 short,否则编译警告。

3.一个浮点型常量如果后面加上 f 编译器认为它是 float 类型,否则认为 double 类型,例如10.0是 double 类型,10.0f是 float 类型。

#include <stdio.h>

int main(){
    int age = 10; //int类型变量

    float height = 1.8f; //float类型数值后要加个f

    double money = 1000.22; //默认实数就是double类型

    char ch = 'a'; //注意char类型只能存一个字符,一个汉字是3个字符,所以不能用char类型变量存储

    return 0;
}