学点 C 语言(33): 函数 - 传值与传址、形参与实参

学点 C 语言(33): 函数 - 传值与传址、形参与实参

学点 C 语言(33): 函数 - 传值与传址、形参与实参传值参数(非指针参数):include <stdio.h>int inc(int x);int main(void){int num = 1; printf("%d\n", inc(num)); /* 2 */ printf("%d\n", num); /* 1; num 并没有改变, 用作函数参数时只是复制过去 */ getchar(); return 0;}int inc(int x) {x++; return x;}传址: 参数是指针、参数是地址inc...

C/C++ 2020-03-05 AM 1803℃ 0条
学点 C 语言(33): 函数 - 传值与传址、形参与实参

学点 C 语言(33): 函数 - 传值与传址、形参与实参

学点 C 语言(33): 函数 - 传值与传址、形参与实参传值参数(非指针参数):include <stdio.h>int inc(int x);int main(void){int num = 1; printf("%d\n", inc(num)); /* 2 */ printf("%d\n", num); /* 1; num 并没有改变, 用作函数参数时只是复制过去 */ getchar(); return 0;}int inc(int x) {x++; return x;}传址: 参数是指针、参数是地址inc...

C/C++ 2020-03-05 AM 1653℃ 0条
学点 C 语言(31): 函数 - 声明、定义、调用

学点 C 语言(31): 函数 - 声明、定义、调用

学点 C 语言(31): 函数 - 声明、定义、调用如果函数没有声明, 应该在调用前定义:include <stdio.h>/ 定义求大值函数 /int MAX(int x, int y) {if (x > y) return x; else return y;} / 定义求小值函数 /int MIN(int x, int y) {return x < y ? x : y;} int main(void){int a = 5; int b = 6; /* 调用函数 */ printf("%d\n", MAX(a,b)); pr...

C/C++ 2020-03-05 AM 1679℃ 0条
学点 C 语言(30): 数据类型 - 布尔类型

学点 C 语言(30): 数据类型 - 布尔类型

学点 C 语言(30): 数据类型 - 布尔类型:include <stdio.h>//等待填充...https://www.cnblogs.com/del/archive/2008/12/02/1345426.html

C/C++ 2020-03-05 AM 1746℃ 0条
学点 C 语言(29): 数据类型 - 定义新类型(typedef)

学点 C 语言(29): 数据类型 - 定义新类型(typedef)

学点 C 语言(29): 数据类型 - 定义新类型(typedef)自定义的类型名一般要大写, 以提示这是自命名的类型.把 unsigned long 更名为 UINT:include <stdio.h>int main(void){typedef unsigned long UINT; UINT num = 1234567890; printf("%lu\n", num); getchar(); return 0;}给一个结构重命名:include <stdio.h>int main(void){struct Rec { char...

C/C++ 2020-03-05 AM 1732℃ 0条
学点 C 语言(28): 数据类型 - 联合(union)

学点 C 语言(28): 数据类型 - 联合(union)

学点 C 语言(28): 数据类型 - 联合(union)在结构中, 每个字段的数据类型是唯一的; 使用联合可以在一个字段中储存不同的数据类型.不同的数据类型共享一块内存. 当然其内存大小应依着大的来.联合中的数据, 非此即彼, 只有一个有效; 应该有说明在某个数据中此时有用的是什么类型.除了共享内存以外, 联合与结构一样.union 的大小是其中最大数据成员的大小:include <stdio.h>int main(void){union MyUnion { short n1; int n2; double n3; }; printf(&q...

C/C++ 2020-03-05 AM 1703℃ 0条
学点 C 语言(27): 数据类型 - 结构中的 "位字段"

学点 C 语言(27): 数据类型 - 结构中的 "位字段"

学点 C 语言(27): 数据类型 - 结构中的 "位字段"所有基础的数据类型, 最大的也不过 10 个字节;我们可以自定义的数据类型 -- "结构", 通过把若干类型组合在一起, 让一种类型可以大很多.我们知道, 一个字节有八个 Bit 组成; 能否把一种类型缩小、缩小到 Bit 级?结构中的 "位字段" 是以 Bit 为单位的, 这已经是计算机的最小单位, 大小是 char 类型的 1/8.下面的例子中定义的位字段, 分别有 1-4 Bit 大小; 1 Bit 的字段只能放两个数(0、1), 4 Bit 的字段也只能放下 16 个数:结构体可以包含位字段:include <st...

C/C++ 2020-03-05 AM 1619℃ 0条
学点 C 语言(26): 数据类型 - 结构的更多可能

学点 C 语言(26): 数据类型 - 结构的更多可能

学点 C 语言(26): 数据类型 - 结构的更多可能包含数组的结构:include <stdio.h>int main(void){struct Rec { int x[3]; int y; } r1; r1.x[0] = 11; r1.x[1] = 22; r1.x[2] = 33; r1.y = 99; printf("%d,%d,%d,%d", r1.x[0], r1.x[1], r1.x[2], r1.y); getchar(); return 0;}结构中的结构:include <stdio.h>...

C/C++ 2020-03-05 AM 1659℃ 0条
学点 C 语言(25): 数据类型 - 结构数组与结构指针

学点 C 语言(25): 数据类型 - 结构数组与结构指针

学点 C 语言(25): 数据类型 - 结构数组与结构指针结构数组:include <stdio.h>int main(void){struct Rec {int x,y;}; struct Rec rs[10]; size_t i; for (i = 0; i < sizeof rs/sizeof rs[0]; i++) { rs[i].x = i; rs[i].y = i * 2; } for (i = 0; i < sizeof rs/sizeof rs[0]; i++) { printf("%d, %d\n&...

C/C++ 2020-03-05 AM 1797℃ 0条
学点 C 语言(24): 数据类型 - 结构(struct)

学点 C 语言(24): 数据类型 - 结构(struct)

学点 C 语言(24): 数据类型 - 结构(struct)结构就是多个变量的集合:include <stdio.h>int main(void){struct Rec { int x; int y; }; struct Rec r1; r1.x = 111; r1.y = 222; printf("%d, %d", r1.x, r1.y); getchar(); return 0;}定义时同时声明变量:include <stdio.h>int main(void){struct Rec { int x,y; }...

C/C++ 2020-03-05 AM 1673℃ 0条
学点 C 语言(23): 数据类型 - 给指针分配内存

学点 C 语言(23): 数据类型 - 给指针分配内存

学点 C 语言(23): 数据类型 - 给指针分配内存C 语言的内存分配很简单: malloc、calloc、realloc、freemalloc(字节数); 返回内存段的首地址, void 的.calloc(个数, 类型大小); 和 malloc 的区别就是它会初始化内存为空.realloc(原指针, 字节数); 重新分配由 malloc、calloc 分配的内存; 这里有太多注意事项:1、如果缩小了, 会截掉一块, 会保留前面的内容;2、如果扩大了, 仍会保留已有的内容, 但新加的内存不会初始化;3、在扩大时, 有可能内存地址会变化, 这样原来的指针就废了, 不过返回值是新指针, 所...

C/C++ 2020-03-05 AM 1801℃ 0条