C语言腾讯课堂(一)

腾讯课堂:c语言从零到精通

1. 从第一个例子开始

#include <stdio.h>

int main(void) {
    printf("hello, qin men 
");
    system("pause");    // 请按任意键继续...
    return 0;
}
// 开始编译,生成可执行文件exe
// 执行程序:1. 调试运行 2. 命令行运行 3. 直接点击执行
// 发布exe:拷贝给用户、上传到网上
// 静态库:在编译的时候使用,A提供了静态库给B,如果这个库不存在,在编译的时候就会出错
// 动态库:使用的时候再调用:A提供了dll给B,只有在exe执行的时候调用dll,如果调用的时候没有这个dll,就会出错

在函数体外的程序执行会出错,必须在函数体(即main函数里)执行程序。
// # 表示预编译符号;include:表示引用某个头文件
#include <stdio.h>

// void表示,main函数没有调用参数
int main(void) {
    /*
    printf() 、system()是系统已经实现的函数,标准库实现的函数,
    用#include引用进来,或者用编译器内建函数代替标准库函数。
    可能会出现的问题,编译器的实现不一样,所以函数的结果可能与预期不一致
    */
    printf("hello, qin men 
");
    system("pause");    // 请按任意键继续...
    return 0;   // 如果没有返回值,系统会自动返回0
}

杂项运算符 ? sizeof & 三元
下表列出了 C 语言支持的其他一些重要的运算符,包括 sizeof 和 ? :。
运算符 描述 实例
sizeof() 返回变量的大小。 sizeof(a) 将返回 4,其中 a 是整数。
& 返回变量的地址。 &a; 将给出变量的实际地址。
* 指向一个变量。 *a; 将指向一个变量。
? : 条件表达式 如果条件为真 ? 则值为 X : 否则值为 Y

代码:

#include <stdio.h>

int main()
{
    int a = 4;
    short b;
    double c;
    int* ptr; // *指向一个变量

    // sizeof()返回变量的大小
    printf("a: %lu 
", sizeof(a));
    printf("b: %lu 
", sizeof(b));
    printf("c: %lu 
", sizeof(c));

    // & 返回变量的地址
    ptr = &a;
    printf("a的值是:%d
", a);
    printf("*ptr是%d
", *ptr);
}

整数、浮点数、内存

1. 变量、2进制、16进制
// %d表示输出一个整数,整数类型
// %f表示输出一个浮点数,浮点数类型
// %c表示输出一个字符型,'A'

变量类型-概要介绍
整形(有符号/无符号)
浮点
字符
字符串(c与c++不一样)

生活中的进制-10进制
计算机中的进制-2/16进制
0/1: 0000 0010 1111 1111
0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f(与10进制的对应关系是:0-9对应0-9;A-F对应10-15;)

整数变量和内存
内存大小
32位/64位(地址所表示的空间)
2G/4G
1B(byte/字节) = 8bit(比特/二进位制信息单位)
1KB = 1024B
1M = 1024*1KB
1G = 1024*1MB

int x1 = 1;

unsigned int x2 = 2;

// 输出变量的地址

printf("%p, %p ", &x1, &x2);

浮点数:范围、长度内存表示
float
32bit
double
64bit
浮点数不再区分signed和unsigned

原文地址:https://www.cnblogs.com/lqcdsns/p/6481681.html