重新学习c语言 day1

本科毕业后自学了一段时间c语言和数据结构,研究生要用到,但已生疏了不少,故重新跟着b站鹏哥学习和敲代码,特此记录。

第一个c语言程序

主函数main()

c语言的具体结构:

一个c语言程序由若干个头文件函数组成

# include <stdio.h>
// std -标准
// i -input
// o -output

//标准的主函数写法
int main()
{
    printf("hello world\n");
    return 0;
}

int 与 0 呼应,整形。

且在最新的C标准中,main函数前的类型为int而不是void。

main函数是程序的入口,有且只有一个。

良好习惯
  1. 一个说明或一个语句占一行,例如:包含头文件、一个可执行语句结束都需要换行
  2. 函数体内的语句要有明显缩进通常以按一下Tab键为一个缩进
  3. 括号要成对写,如果需要删除的话也要成对删除
  4. 当一句可执行语句结束的时候末尾需要有分号
  5. 代码中所有符号均为英文符号
  6. 注释:多行注释和单行注释。

数据类型

基本数据类型

整型:int

字符串:char

浮点数型:float double

# include <stdio.h>
// std -标准
// i -input
// o -output

//标准的主函数写法
int main()
{
    printf("%d\n", sizeof(char)); //1
    printf("%d\n", sizeof(int)); //4
    printf("%d\n", sizeof(short)); //2
    printf("%d\n", sizeof(long)); //4
    printf("%d\n", sizeof(long long)); //8
    printf("%d\n", sizeof(float)); //4
    printf("%d\n", sizeof(double)); //8
    return 0;
}

bit - 比特

byte - 字节
kb mb gb tb pb

变量和常量

C语言中,不变的值:常量

变动的值:变量

在C语言中,可以用一个标识符来表示一个常量,称之为符号常量。符号常量在使用之前必须先定义,其一般形式为:

# define 标识符 常量值 
  
# include <stdio.h>
# define POCKETMONEY 10    //定义常量及常量值
int main()
{
    // POCKETMONEY = 12;  //小明私自增加零花钱对吗?
    printf("小明今天又得到%d元零花钱\n", POCKETMONEY);
    return 0;  
}

常量分类: 

  •         字面常量
  •         const 修饰的常变量
  •         #define 定义的标识符常量
  •         枚举常量
#include <stdio.h>
//举例
enum Sex
{
 MALE,
 FEMALE,
 SECRET
};
//括号中的MALE,FEMALE,SECRET是枚举常量
int main()
{
    //字面常量演示
    3.14;//字面常量
    1000;//字面常量
    
    //const 修饰的常变量
    const float pai = 3.14f;   //这里的pai是const修饰的常变量,本质是变量

    pai = 5.14;//是不能直接修改的!
    
    //#define的标识符常量 演示
    #define MAX 100
    printf("max = %d\n", MAX);
    
    //枚举常量演示
    printf("%d\n", MALE);
    printf("%d\n", FEMALE);
    printf("%d\n", SECRET);
    //注:枚举常量的默认是从0开始,依次向下递增1的
    return 0;
}

 变量设置

int main()
{
    short age = 3;
    int height = 176;
    float weight = 82.5;
    return 0;
}

变量的分类

局部变量和全局变量

int a = 100; //全局变量

int main()
{
    short age = 3; //局部变量
    int height = 176;
    float weight = 82.5;
    return 0;
}

同一类型的变量不能重复出现

全局变量和局部变量的名称可以相同,相同时,局部优先

//写一段代码,计算两个数的和
//scanf  -input
//printf -output
# include <stdio.h>
int main()
{
    int num1 = 0; //初始化
    int num2 = 0;
    
    scanf("%d %d", &num1, &num2);

    int sum = num1 + num2;

    printf("两个数的和为:%d\n", sum);
    return 0;
}

作用域和生命周期 

局部变量的作用域:变量所在的局部范围

全局变量的作用域是整个工程;

局部变量的作用域是变量所在的局部范围

生命周期:变量的生命周期指的是变量的创建到变量的销毁的一个时间段。

全局变量的生命周期:整个程序的生命周期;

局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束;
 

字符串

"hello, boy\n"
这种由双引号( Double Quote )引起来的一串字符称为字符串字面值( String Literal ),或者简称字符串。
注:字符串的结束标志是一个 \0 的转义字符。在计算字符串长度的时候 \0 是结束标志,不算作字符串内容。
# include <stdio.h>
//(突出'\0'的重要性)
# include <string.h>
int main()
{
    int len = strlen("acv")
    printf("%d\n", len) //3

    char arr1[] = "bit";
    char arr2[] = {'b', 'i', 't'};
    char arr3[] = {'b', 'i', 't', '\0'};
    printf("%s\n", arr1); //bit
    printf("%s\n", arr2); //bitbit
    printf("%s\n", arr3); //bit
    return 0;
}

转义字符 释义

\?
在书写连续多个问号时使用,防止他们被解析成三字母词
\'
用于表示字符常量 '
\''
用于表示一个字符串内部的双引号
\\
用于表示一个反斜杠,防止它被解释为一个转义序列符。
\a
警告字符,蜂鸣
\b
退格符
\f
进纸符
\n
换行
\r
回车
\t
水平制表符  TAB
\v
垂直制表符
\ddd
d d d 表示 1~3 个八进制的数字。 如: \130 表示八进制转为十进制后的ASCII字符 X
\xdd
d d 表示 2 个十六进制数字。 如: \x30 表示字符 0
  • 41
    点赞
  • 39
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值