- 博客(14)
- 收藏
- 关注
原创 《C现代编程》第三章 面向对象
3.2 C的模块化与面向对象本章主要是将C 的知识模块化,用结构体把数据和操作函数分离开来,将函数发布对外使用,这就是面向对象 的思想,也是C++的思想;生成一个栈的结构体 ,包括栈的元素;栈的初始化newStack(),栈的压入push(); 栈的取出pop()stack.h 文件#ifndef _STACK_H_#define _STACK_H_#include &...
2018-11-15 09:33:07 195
翻译 __attribute__中section部分
变量属性修饰符__attribute__((section(“name”),zero_init))用于将变量强制定义到name属性数据节中,zero_init表示将未初始化的变量放到ZI数据节中。因为“NO_INIT”这显性命名的自定义节,具有UNINIT属性。section,就得说RO RI ZI了,在ARM编译器编译之后,代码被划分为不同的段,RO Section(ReadOnly)中存放...
2018-12-17 16:38:15 2503
转载 NRF51822的蓝牙设置
/************************************************************************************芯片:NRF1822**功能:蓝牙功能设置**缺陷:功能设置可能不全,需要后期补录********************************************************************...
2018-12-07 16:21:31 1406
原创 STM32 问题解决单
USE_STDPERIPH_DRIVER, 若果不定义这个宏的报错..\OBJ\application.axf: Error: L6218E: Undefined symbol assert_param (referred from misc.o).查看这个宏定义的作用如下:可以看到出没有宏,那么底层文件stm32f10x.h是无法调用stm32f10x——conf.h文件的...
2018-12-03 13:56:43 722
原创 Source Insight 调教
/************************************* 快捷键 ********************************/应用快捷键 功能Alt+F12 草稿视图Alt+F4 退出Ctrl+Alt+Space 重绘屏幕 编辑快捷键 功能Shift+Tab 回退一个制表符BackSpace, Shift+Bac...
2018-11-26 09:30:55 246
翻译 volatile //你到底对我做了什么?
volatile是一个类型修饰符(type specifier),就像大家更熟悉的const一样,它是被设计用来修饰被不同线程访问和修改的变量。volatile的作用是作为指令关键字,确保本条指令不会因编译器的优化而省略,且要求每次直接读值。这是网上的解释、你可以这样定义它:volatile int i = 0;它表示这个变量 i 是不被编辑器优化的;什么是优化呢?比如...
2018-11-20 15:49:10 151
原创 冒号排序 / 直接插入法
// 冒号排序.cpp : 定义控制台应用程序的入口点。//#include "stdafx.h"#include <iostream>#include <vector>#include <string>#include <algorithm>//冒号排序,比较相邻的两个数,如果前者比后者大,则进行交换。每一轮确定一个最大的数放...
2018-11-19 15:30:00 343
原创 字符串需要优化代码
// Integer addition.cpp : 定义控制台应用程序的入口点。//请设计一个算法能够完成两个用字符串存储的整数进行相加操作,对非法的输入则返回error#include "stdafx.h"#include <string.h>#include <stdlib.h>#include <stdio.h>//判定是否是数字字符b...
2018-11-19 15:28:02 106
原创 【数组指针】(*p)[ ] /【指针数组】*p[ ] / 函数指针 / 指针函数
首先看几种常见的指针类型:1. int *p;// p是 int * 的类型,p指向的是int 类型;2. int **p;// p是 int** 的类型,p指向的是int* 类型;3. char *p[ ];//p是 char*[ ] 的类型, p指向的是char* 类型;指针数组又被称为字符串数组,由此可知它主要处理字符char类型;4. int (*p)[ ] ;//p...
2018-11-19 15:14:19 1668
原创 《C现代编程》第四章 C语言与设计模式
当状态位有三种以上,我们用面向对象的状态设置;下面是现代编程 ,CD 播放机的状态设置;State.h#ifndef _STATE_H #define _STATE_H #include <stddef.h>#include <stdio.h>#ifdef _cplusplusextren "C"{#endif typedef stru...
2018-11-19 14:43:29 282
原创 const 以及 引用& 的用法
const T { //【const T】 int i = 5; const int constInt = 10; //正确,声明常量必须初始化, const int constInt2 = i; //正确 //const int constInt3; //错误,未被初始化 //constInt = 20; ...
2018-11-16 14:11:53 736
原创 linux 调教
I、准备工作:1) 一个类UNIX系统,这里选择CentOS 6.92) 安装gcc编译器,方法很多,一种简单的安装方式:yum install gcc-c++ 注:yum install g++ 会失败,因为没有g++这个包这种操作必须保证虚拟机网络连接; Linux 命令符窗口的基础操作介绍= 前提基础 =Linux系统的路径写法有两种,一种是相对路径一...
2018-11-16 13:55:46 571
翻译 C 文件处理
文件分类:操作中用到的二进制和ASCII方式。二进制文件形式:把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放。优点:可以节省外存空间和转换时间。缺点:一个字节并不对应一个字符,不能直接输出字符形式。一般中间结果数据需要暂时保存在外存上,以后又需要输入内存的,常用二进制文件保存。ASCII文件形式:每一个字节放一个ASCII代码。优点:便于对字符进行逐个处理,也...
2018-11-15 18:28:31 422
原创 重构几种常见的字符串处理函数
size_t strlen(const char *str);int strlenFunction(const char* str){ int count = 0; if (str == NULL) { return 0; } while (*str != '\0') { count++; str++; } return count;}计算字符串开始到 ...
2018-11-15 15:42:52 227
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人