00 C语言基本手册、概念

1、C语言构成

/*
 * 1.C语言程序是由函数组成的
 * 2.C语言程序启动时,系统就会自动调用名称叫做main的函数
 * 3.C语言规定了函数定义的固定格式
 * int main(){return 0;}
 * 4.C语言中定义其它函数的格式和main函数一样, 只不过函数名称不能相同
 * 5.系统不会自动调用除main函数以外的其它函数,但是我们可以在main函数中自己调用
 * 6.调用函数的格式: 函数名称();
 */
#include <stdio.h> // 告诉系统去哪查找printf函数

int call(){
    return 0;
}

int main(){
    call();
    /*
     * 1.系统提供了专门用于往屏幕上输出内容的函数, 这个函数叫做printf
     * 2.可以在调用函数时在()中指定需要往屏幕上输出的内容
     * 3.由于printf不是我们定义的, 所以还需通过##include <stdio.h>告诉C语言程序去哪查找这个函数的实现代码
     */
    printf("hello world!!!");
    return 0;
}

2、基本代码规范

#include <stdio.h>

int main()
{
    /*
     * 1.公司的代码规范中会规定阅读性优先还是性能优先
     * 2.第一种实现方式是阅读性优先
     * 3.第二种实现方式是性能优先
     * 4.一般情况下为了方便同事之间沟通和提升代码的可维护性都是阅读性优先
     * 5.初学者在编写代码时尽量先以阅读性优先的方式来编写
     */
//    printf(" *** *** \n");
//    printf("*********\n");
//    printf(" ******* \n");
//    printf("   ***   \n");
//    printf("    *    \n");

//    printf(" *** *** \n*********\n ******* \n   ***   \n    *    \n");

    return 0;
}

3、main函数、中文问题

#include <stdio.h>

int main()
{
    /*
     * 1.C语言中,每条完整的语句后面都必须以分号结尾
     * 2.C语言中,除了注释和双引号引起来的地方以外都不能出现中文
     * 3.C语言中,必须有一个main函数
     * 4.C语言中,有且只能有一个main函数
     */
    printf("0&&1改变世界\n");
    return 0;
}
//int main()
//{
//    return 0;
//}

4、小插曲、利益的纷争

#include <stdio.h>
/*
 * 1.标准的推行需要各大厂商的支持和实施,由于各大厂商利益、理解等问题,
 * 导致了实施结果发生了变化
 * 2.大家需要了解和知道的就是下面的三种写法也是正确的,
 * 但是no zuo no die, 编写C语言程序的时候一定要按照最标准的写法来编写
 */
//int main()
//{
//    printf("Hello World!\n");
//    return 0;
//}

//void main()
//{
//    printf("Hello World!\n");
//    return 0;
//}

//main()
//{
//    printf("Hello World!\n");
//    return 0;
//}

main()
{
    printf("Hello World!\n");
}

5、注释

#include <stdio.h>

int main()
{
    /*
     * 1.单行注释格式: //
     * 2.单行注释有效范围:
     * 从第二个斜杠到这一行的末尾
     *
     * 1.多行注释格式: /星 星/
     * 2.多行注释有效范围:
     * 从第一颗星直到第二颗星之间
     *
     * 1.多行注释和单行注释的注意点:
     * 注释是写给人看的, 不是写给机器看的, 所以编译器在编译代码的时候, 不会将注释的内容编译成0和1
     */
    // 我是被注释的内容

    /*
     我是被注释的内容
     我是被注释的内容

    */
    printf("Hello World!\n");
    return 0;
}

#include <stdio.h>

int main()
{
    // 1.单行注释可以嵌套单行注释
    // 被注释的内容 // 被注释的内容

    // 2.多行注释可以嵌套单行注释
    /*
     // 被注释的内容
     */

    // 3.单行注释可以嵌套多行注释, 但是被嵌套的多行注释必须在同一行
    // /**/

    // 4.多行注释不能嵌套多行注释
//     /*
//     /*
//     */
//     */
    return 0;
}

6、关键字、标识符等

#include <stdio.h>
/*
1.只能由字母(a~z、 A~Z)、数字、下划线组成
不能包含除下划线以外的其它特殊字符串
2.不能以数字开头
3.不能是C语言中的关键字
4.标识符严格区分大小写, test和Test是两个不同的标识符
*/
int daDianHua(){
    return 0;
}
int test(){
    printf("test1!\n");
    return 0;
}
int Test(){
    printf("test2!\n");
    return 0;
}
int main()
{
    Test();
    printf("Hello World!\n");
    return 0;
}

#include <stdio.h>

int main()
{
    // 1.整型常量
    1;
    2;
    3;
    10;

    // 2.实型常量(小数)
    // 单精度/双精度, 默认情况下所有的实型常量都是双精度
    3.14;  // 双精度
    6.66;

    10.1f; // 单精度
    2.31F;

    // 3.字符型常量
    // 注意点:
    // 3.1字符型常量的单引号中只能放一个字符
    // 3.2特殊情况: \n \t \\ (转义字符)
    'a';
    '1';
    '.';
    'ab'; // 错误
    '12'; // 错误
    '王'; // 错误
    '\n';
    '\t';

    // 4.字符串型常量
    "a";
    "ab";
    "12";
    "王";

    return 0;
}

7、变量

#include <stdio.h>

int main()
{
    // 1.定义变量的格式: 数据类型 变量名称;
    // 2.为什么要指定数据类型?
    // 为了告诉操作系统 ,定义的变量对应的存储空间中, 将来能够存储什么样的数据
    // 为了告诉操作系统需要分配多大的存储空间
    // 3.为什么要指定变量名称?
    // 为了我们将来能够找到开辟好的存储空间,使用这块存储空间
    
    int intValue; // 整型变量
    float floatValue; // 实型变量 单精度
    double doubleValue; // 实型变量 双精度
    char charValue; // 字符变量
    
    // 0 bit
    // 00000000 byte(字节)
    // 1024个byte 1KB
    // 1024KB 1M
    // 1024M  1GB
    return 0;
}

#include <stdio.h>

int main()
{
    // 1.定义变量
    int num;
    // 2.使用变量
    // 下面这句代码, 我们称之为给变量num赋值
    // 第一次给变量赋值, 我们又称之为初始化
    // 注意点: 在C语言中 ,想要使用变量, 必须先给变量初始化
    // 如果变量没有被初始化, 那么变量中保存的都是一些垃圾数据
    num = 10;
    num = 998;

    printf("num = %i\n", num);

    return 0;
}

#include <stdio.h>

int main()
{
//    int num;
//    int value;
    // 同时定义多个变量
    // 注意点: 必须是相同类型的变量, 才可以这样写
//    int num,value;

    // 先定义再初始化
//    int num;
//    num = 10;

    // 定义的同时初始化
//    int num = 10;

    // 完全初始化
//    int num = 10,value = 998;
    // 部分初始化
    int num = 10,value;

    return 0;
}
#include <stdio.h>

int call(){
    value = 999;
    printf("value = %i\n", value);
    return 0;
}
int value; // 全局变量
int main()
{
    /*
     * 1.什么是局部变量
     * 定义在大括号中的变量, 我们称之为局部变量
     * 作用域:
     * 从定义变量的那一行开始, 直到遇到return或者遇到}结束为止
     * 1.什么是全局变量
     * 定义在大括号外面的变量, 我们称之为全局变量
     * 作用域:
     * 从定义变量的那一行开始, 直到文件末尾
     */
    /*
//    num = 10;
//    printf("num = %i\n", num);
//    int num; // 局部变量
//    num = 10;
//    printf("num = %i\n", num);
//    {
//        int num = 998;
////        printf("num = %i\n", num);
//    }
//    printf("num = %i\n", num);
    */
    value = 666;
    printf("value = %i\n", value);
    call();
    return 0; // 结束函数
//    num = 10;
//    printf("num = %i\n", num);
}
#include <stdio.h>

int value;
int value; // 不报错
int main()
{
    /*
     * 1.变量只能在作用域范围内使用, 超出作用域范围就不能使用了
     * 2.局部变量:
     * 2.1在同一个作用于范围内, 不能出现相同名称的变量
     * 2.2如果想要出现相同名称的局部变量, 必须在不同的作用域范围内
     * 2.全局变量:
     * 2.1在同一个作用于范围内, 可以出现相同名称的变量
     */
    int num; // Ctrl + / 注释快捷键
//    int num; // 报错
    {
        int num;
    }
    return 0;
}
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,192评论 6 511
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,858评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,517评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,148评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,162评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,905评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,537评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,439评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,956评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,083评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,218评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,899评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,565评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,093评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,201评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,539评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,215评论 2 358

推荐阅读更多精彩内容

  • 生活赋予我们一种巨大的和无限高贵的礼品,这就是青春:充满着力量,充满着期待、志愿,充满着求知和斗争的志向,...
    鲁宗慧阅读 363评论 0 4
  • 今天我制作了一个乐器,就是用一个没有盖的薄一点的盒子,从窄的那边正中间用剪子扎两个孔,把一条绳子穿进其中的一...
    张贺辰阅读 206评论 0 0
  • 他们未曾相见,便已注定相伴。人的结局都是一样的,不一样的无非是在这起点到终点的路上活出的样式。而即便是这个样式,在...
    兮间白阅读 565评论 0 2
  • 张德芬老师说:“你的情绪不是你自己!”我时刻提醒自己,学会很快的分辨出来哪些是自己的情绪,情绪背后是想表达...
    陶蒙蒙阅读 187评论 0 0