C&&C++
北纬34度停留
这个作者很懒,什么都没留下…
展开
-
c语言从零开始——day1
第一节#### 认识c文件 ####1,创建hello.c文件#include int main(){ printf("hello world!!!\n"); return 0;}#认识源文件内基本信息/*1,文件后缀名:.c(源文件)2,对include 解释: *.h(头文件)原创 2017-12-28 13:37:14 · 245 阅读 · 0 评论 -
C语言从零开始——柔性数组
#### 在结构体内如何存放动态长度字符串? ####/* 如果需要在结构体里面存放一个动态长度的字符串,我们可以定义一个指针成员,让指针指向字符串动态内存空间 但是这样会造成结构体和字符串分离,操作起来十分麻烦 还有方法:定义一个结构体指针,将结构体和字符串直接链连接在一起。但是不赞成这样做,因为表达起来很麻烦*/演示原创 2018-01-18 15:03:05 · 342 阅读 · 1 评论 -
C语言从零开始——struct初始
#### 什么是结构体 ####/* 结构体:是一种数据结构,包含不同类型的数据。(可以包含基本数据类型,数组,指针等) 结构体和数组都是聚合数据类型,但数组中元素的类型相同,通过下标或者指针间接访问元素。而结构体里面的数据被称为成员,由于每个成员类型大小可能不同,不能用下标访问,可以通过名字访问*/演示代码:struct_1.c#include typede原创 2018-01-18 20:39:18 · 412 阅读 · 0 评论 -
C语言从零开始——wait和waitpid
#### wait函数 ####wait函数只是针对一个子进程情况,查看man手册wait用法:pid_t wait(int *status);参数是int*类型,返回值是pid_t类型;wait执行原理:1,子进程先结束,会发一个信号SIGCHLD2,父进程调用wait等待子进程结束,再执行父进程下来的代码;如果子进程没有结束,就一直在等,会阻塞。3,有资源回收函原创 2018-02-02 20:14:47 · 1872 阅读 · 0 评论 -
C语言从零开始——union联合体
/* 联合体(共用体):一种数据结构;里面变量共用一个内存首地址,各种变量名可以同时使用,操作同时生效 和struct区别: 1,结构体中所有变量都是共存的,有一个成员变量,就开辟一个变量类型的内存>空间;这种数据结构内存空间分配是粗放的,不管用不用,都会分配 2,联合体中各个变量不共存,所有变量共用一个内存首地址(开辟原则,选成员>变量中变原创 2018-01-19 15:00:58 · 425 阅读 · 0 评论 -
C语言从零开始——位字段
/* 位字段:C语言中一种存储结构,不同于一般结构体的是它在定义成员的时候需要指定成员所占的位数。 位字段和结构体密切相关,只会出现在结构体中,元素类型只能时int或者unsigned int*/#### 位字段定义和在内存中开辟空间原则 ####C代码:bit_word_1.c#include struct data{ //位字段定义:原创 2018-01-19 15:29:20 · 470 阅读 · 0 评论 -
DNS解析——上
DNS域名解析,BIND:Berkeley Internet Name DomainDNS:Domain Name Service,名称解析(转换)Name Resolving(背后有查询过程,这就需要用到"数据库")域名:.com域名是一级一级的,一个完全限定域名是由很多域名一层一层类加而成的www.baidu.com(主机名FQDN(完全限定域名):full qualified domain ...原创 2018-03-28 15:09:52 · 831 阅读 · 0 评论 -
C语言从零开始——简单算法(冒泡)
练习冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。冒泡算法核心思想:重复访问要排序的数列,每次比较两个元素,如果他们的顺序错误则交换。重复地进行直到没有再需要交换,就排序完成。名字由来:因为需要的顺序会经由交换慢慢“浮”到数列的顶端。#include <stdio.h>void func();void func1();void func2();//...原创 2018-04-17 09:23:29 · 323 阅读 · 0 评论 -
一次分区迁移的过程
磁盘块大小迁移本机在装系统时,分区不合理,给了/50G,却给/home了193个G。随着使用时间变长,/大小越来越吃紧,而/home却很富有。将/home的磁盘块分给/一点迫在眉睫。查看以下磁盘使用情况,使用df命令[root@localhost tmp]# df -hFilesystem Size Used Avail Use% Mounted on/dev/map...原创 2018-05-05 13:52:56 · 627 阅读 · 0 评论 -
C++从零开始——类与对象(1)
#### 什么是类 #### 定义一个类,本质上是定义一个数据类型的蓝图。实际上并没有定义任何数据,其实是定义了类的对象包括了什么,以及可以在这个对象上执行哪些操作。类定义是以关键字 class 开头,后跟类的名称。类的主体是包含在一对花括号中>。类定义后必须跟着一个分号或一个声明列表: class 类名{成员变量 成员函数声明};#### 什么是对象 ####原创 2018-01-14 20:56:15 · 130 阅读 · 0 评论 -
C++从零开始——
#### 什么是C++ #### ————C语言的超集 C++是C语言的继承,它既可以进行C语言的过程化程序设计,又可以进行以抽象数据类型为>特点的基于对象的程序设计,还可以进行以继承和多态为特点的面向对象的程序设计。C++擅长面向对象程序设计的同时,还可以进行基于过程的程序设计,因而C++就适应的问题规模原创 2018-01-14 20:35:40 · 420 阅读 · 0 评论 -
C语言从零开始——memory初识(2)
#### 代码段 ####/* 代码段:存放函数代码,字符串常量。只读,不可更改*/#include int main(void){ char buf[] = "123456"; //栈变量 char buf1[] = "123456"; printf("buf address = %p \n",buf)原创 2018-01-12 20:20:23 · 1419 阅读 · 0 评论 -
C语言从零开始——day2
第二节#### 位运算 ####创建文件bit_operation.cint main(void){ int i = 0b101010; int j = i //0xa8 printf("j = 0x%x \n",j); int k = i >原创 2018-01-03 18:06:57 · 139 阅读 · 0 评论 -
C语言从零开始——day2(函数第一天)
第三节#### main函数 ####创建main.c文件#include void func(); //函数的声明int main(int argc, char **argv) //main函数标准类型,argc表示main函数参数的个数;argv表示main函数参数的意义{ func(); //函数的调原创 2018-01-03 18:34:01 · 194 阅读 · 0 评论 -
C语言从零开始——位运算练习
练习//1.给定一个整型数a,设置a的bit3(为1),保证其他位不变。创建test1.c文件#include int main(void){ int a = 0b11100101; //当bit3变为1:0b1110 1101 十六进制表示:0xED a |= 1 << 3; printf("a = 0x%X \n"原创 2018-01-03 20:46:22 · 1123 阅读 · 0 评论 -
C语言从零开始——const初识
#### const是什么 ####/*const 用于修饰变量,表示该变量是只读的,不可修改;在C++里,引申了这个用>法,表示常量*/#include int main(void){ const int i = 5;//这就表明i是一个只读变量,不能再被修改// i = 8;//error: assignment of read原创 2018-01-12 18:00:50 · 159 阅读 · 0 评论 -
C语言从零开始——typedef和restrict
#### typedef ####/* typedef关键字,目的是给类型名重命名;注意:这里不是创造出新的类型,类似于给类型名起外>号*/include typedef int size;//这句话的意思就是对int进行重命名成sizetypedef char * tpchar;//对char*类型名重命名成tpcharint main(void)原创 2018-01-12 18:06:42 · 132 阅读 · 0 评论 -
C语言从零开始——指针数组和数组指针
#### 指针和数组的区别 ####int main(){ int a[5]; int *b;//定义完成之后,表达式*a是合法的,但是*b是非法的;*b会访问内存中的不确定位置,导致程序终止!//还有,b++可以通过编译,但是a++不可以(数组名不能作为左值) printf("a = %p \n",&a);// *b原创 2018-01-12 18:20:20 · 804 阅读 · 0 评论 -
C语言从零开始——memory初识
#### 1,栈段内存 ####/* 1,栈段内存:函数一旦调用结束,就释放所有内部栈内存。声明周期是临时的。作用域只在花括号内*/#include int* func(void){ int a = 1; return &a;//warning: function returns address of local var原创 2018-01-12 18:36:32 · 1420 阅读 · 0 评论 -
使用C语言实现ll命令
使用C语言实现ll命令先来看看执行ll命令后有什么:[root@localhost day16]# lltotal 44drwxrwxrwx. 3 root root 4096 May 5 11:38 after-rwxr-xr-x 1 root root 13072 Aug 16 15:45 a.outdrwxrwxrwx. 3 root root 4096 May ...原创 2018-08-16 21:14:55 · 5208 阅读 · 3 评论