超声波测距C程序设计 #include#include/***************************数码管为共阴数码管***************************/sbits0=P2^7;//个位选通sbits1=P2^6;//十位选通sbits2=P2^5;//百位选通sbits3=P2^4;//千位选通sbitdp=P0^7;//小数... 2023-06-13 超声波测距C程序设计文章基础课C语言基础
extern的运用及由其引发的编译错误剖析 c/c++语言中有很多地方要用到extern,但是如果没有真正的了解它的意义,会给编程带来很大的麻烦,为了使大家少走弯路,特祥细的说明一下。对于比较小的程序,一般只有一个c文件和一个头文件,全局变量我们通常会直接定义在c文件中,在程序之前加int i定义。如果要在头文件中定义有以... 2023-06-13 extern编译错误剖析文章基础课C语言基础
#define宏定义——只替换,不计算! #define VS typedef #define的用法1.简单的define定义#define MAXTIME 1000一个简单的MAXTIME就定义好了,它代表1000,如果在程序里面写if(i<MAXTIME){.........}编译器在处理这个代码之前会对MAXTIME进行处理替换为1000。这样的定义看起来类似于普通的常量定义CONST,但也有着不同,因为define的定... 2023-06-13 definetypedefC语言文章基础课C语言基础
C语言itoa()函数和atoi()函数详解(整数转字符) C语言提供了几个标准库函数,可以将任意类型(整型、长整型、浮点型等)的数字转换为字符串。以下是用itoa()函数将整数转换为字符串的一个例子:# include # include void main (void){int num = 100;char str[25];itoa(num, str, 10);printf("The number 'num' i... 2023-06-13 C语言itoa()函数atoi()函数文章基础课C语言基础
C/C++语言代码检查工具PC-Lint简介 概述PC-Lint是一个历史悠久,功能异常强劲的静态代码检测工具。它的使用历史可以追溯到计算机编程的远古时代(30多年以前)。经过这么多年的发展,它不但能够监测出许多语法逻辑上的隐患,而且也能够有效地帮你提出许多程序在空间利用、运行效率上的改进点,在很多专业级的软件公司,... 2023-06-13 CC++语言代码检查PC-Lint文章基础课C语言基础
C中的volatile用法 volatile影响编译器编译的结果。指出,volatile 变量是随时可能发生变化的,与volatile变量有关的运算,不要进行编译优化,以免出错。(VC++ 在产生release版可执行码时会进行编译优化,加volatile关键字的变量有关的运算,将不进行编译优化。)。例如:volatile int i=10;int j = i;...in... 2023-06-13 volatile用法C语言文章基础课C语言基础
C结构体应用全攻略——入门、进阶、提高、扩展 在学习结构体之前,你会很自然的想到使用如下的变量来描述:name, height, weight, strong, modfile。好了,现在来给Kula和K分别进行描述,你就需要在变量名上加以区分。对于Kula你有了Kula_name, Kula_height, Kula_weight, Kula_strong, Kula_modfile对于K,你有了K_name, K_hei... 2023-06-13 C语言结构体文章基础课C语言基础
定义C/C++全局变量/常量几种方法的区别 在讨论全局变量之前我们先要明白几个基本的概念:1.编译单元(模块):在IDE开发工具大行其道的今天,对于编译的一些概念很多人已经不再清楚了,很多程序员最怕的就是处理连接错误(LINK ERROR),因为它不像编译错误那样可以给出你程序错误的具体位置,你常常对这种错误感到懊恼,但是如... 2023-06-13 全局变量常量C语言文章基础课C语言基础
C指针应用全攻略——从 指针函数 vs 函数指针 说起 一、“指针函数”与“函数指针”1、指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针类型标识符 *函数名(参数表)int *f(x,y);首先它是一个函数,只不过这个函数的返回值是一个地址值。函数返回值必须用同类型的指针变量来接受... 2023-06-13 C指针指针函数文章基础课C语言基础
C语言18个经典问题答录 1.这样的初始化有什么问题?char *p = malloc(10); 编译器提示“非法初始式” 云云。答:这个声明是静态或非局部变量吗?函数调用只能出现在自动变量(即局部非静态变量) 的初始式中。因为静态变量的地址必须在编译的过程中就确定下来而malloc()申请的内存地址是在运... 2023-06-13 C语言问题答录文章基础课C语言基础
C/C++中的static和extern关键字 资料11、概念基础:局部变量:函数内部定义的变量(包括定义在函数内部复合语句中的变量)。全局变量:定义在函数外部的变量。作用域:任何标识符(包括变量、函数名、符号常量及新的数据名)都有它的作用范围,此范围称为该标识符的作用域。比如符号常量的作用域是从定义符号常量的地方开... 2023-06-13 CC++staticextern关键字文章基础课C语言基础
c语言知识-指针详解 先声明几个指针放着做例子:例一:(1)int *ptr;(2)char *ptr;(3)int **ptr;(4)int (*ptr)[3];(5)int *(*ptr)[4];如果看不懂后几个例子的话,请参阅我前段时间贴出的文章 。1、指针的类型。从语法的角度看,你只要把指针声明语句里的指针名字去掉,剩下的部分就是这个指针的类型。... 2023-06-13 C语言知识指针详解文章基础课C语言基础
10种软件滤波方法汇总 1、限幅滤波法(又称程序判断滤波法) A、方法: 根据经验判断,确定两次采样允许的最大偏差值(设为A) 每次检测到新值时判断: 如果本次值与上次值之差A,则本次值无效,放弃本次值,用上次值代替本次值 B、优点: 能有效克服因偶然因素引起的脉冲干扰 C、缺点 无法抑制那种周期性的干扰 ... 2023-06-13 滤波文章基础课C语言基础
C和C++语言学习总结 知识结构:1、if,for,switch,goto2、#define,const3、文件拷贝的代码,动态生成内存,复合表达式,strcpy,memcpy,sizeof4、函数参数传递,内存分配方式,内存错误表现,malloc与new区别5、类重载、隐藏与覆盖区别,extern问题,函数参数的缺省值问题,宏代码与内联函数区别6、构造... 2023-06-13 CC++学习总结文章基础课C语言基础
C malloc函数用法 函数声明(函数原型):void *malloc(int size);说明:malloc 向系统申请分配指定size个字节的内存空间。返回类型是 void* 类型。void* 表示未确定类型的指针。C,C++规定,void* 类型可以强制转换为任何其它类型的指针。从函数声明上可以看出。malloc 和 new 至少有两个不同: ne... 2023-06-13 Cmalloc函数文章基础课C语言基础
C++ 的构造/析构/赋值/拷贝函数比较 构造函数、析构函数与赋值函数是每个类最基本的函数。每个类只有一个析构函数,但可以有多个构造函数(包含一个拷贝构造函数,其它的称为普通构造函数)和多个赋值函数(除了同类的赋值以外,还有其他的赋值方法)。对于任意一个类A,如果不想编写上述函数,C++编译器将自动为A产生四个缺... 2023-06-13 C++构造析构赋值拷贝函数文章基础课C语言基础
C++构造函数的调用顺序 构造函数的执行次序如下:1,调用基类构造函数,调用顺序按照他们的继承时声明的顺序。2,调用内嵌成员对象的构造函数,调用顺序按照他们在类中声明的 顺序。3,派生类的构造函数体中的内容。析构函数的调用顺序相反。看下面的程序#includea#includeusing namespace std;class point... 2023-06-13 C++构造函数调用顺序文章基础课C语言基础
C++多态性:虚函数的调用原理 多态性给我们带来了好处:多态使得我们可以通过基类的引用或指针来指明一个对象(包含其派生类的对象),当调用函数时可以自动判断调用的是哪个对象的函数。 一个函数说明为虚函数,表明在继承的类中重载这个函数时,当调用这个函数时应当查看以确定调用哪个对象的这个函数。 普通函... 2023-06-13 C++多态性虚函数文章基础课C语言基础
VC++中进程间相互通信的十一种方法 进程通常被定义为一个正在运行的程序的实例,它由两个部分组成:一个是操作系统用来管理进程的内核对象。内核对象也是系统用来存放关于进程的统计信息的地方另一个是地址空间,它包含所有的可执行模块或DLL模块的代码和数据。它还包含动态分配的空间。如线程堆栈和堆分配空间... 2023-06-13 VC++进程通信文章基础课C语言基础
C/C++笔试题目大全 1. 链表反转单向链表的反转是一个经常被问到的一个面试题,也是一个非常基础的问题。比如一个链表是这样的: 1->2->3->4->5 通过反转后成为5->4->3->2->1。最容易想到的方法遍历一遍链表,利用一个辅助指针,存储遍历过程中当前指针指向的下一个元素,然后将当前节点元素的指针反... 2023-06-13 CC++笔试题文章基础课C语言基础
C++中指针的使用艺术 一.什么是指针:其实指针就像是其它变量一样,所不同的是一般的变量包含的是实际的真实的数据,而指针只是一个指示器,它告诉程序在内存的哪块区域可以找到数据。这是一个非常重要的概念,有很多程序和算法都是围绕指针设计的,如链表、遍历等。指针是一个数据类型,本身也需要占用四个... 2023-06-13 C++指针艺术文章基础课C语言基础
学习C语言的秘诀是什么 大家都知道C语言是整个嵌入式开发学习中一门重要的语言,所以学好C语言也是嵌入式开发学习中重要环节。到底如何学习C语言?C语言学习的秘诀是什么?今天本为就为大家揭开这个谜底。学习C语言的秘诀:就是“一字真言,两种态度,三个框架,四项注意”。一、一字真言学好C语... 2023-06-13 学习C语言秘诀文章基础课C语言基础
C陷阱与缺陷中总结的编程建议 建议1:不要说服自己相信“皇帝的新装”有的错误极具伪装性和欺骗性。建议2:直接了当地表明意图但编写代码的本意是希望表达某个意思,但这些代码有可能被误解为另一种意思时,请使用括号或者其它方式让你的意图尽可能清晰明了。这样做不仅有助你日后重读程序时能够更... 2023-06-13 C陷阱缺陷总结编程建议文章基础课C语言基础
C/C++面试题:编写类String的构造、析构和赋值函数 已知类String的原型为: class String { public: String(const char *str = NULL); //普通构造函数 String(const String &other); //拷贝构造函数 ~ String(void); //析构函数 String & operator =(const Strin... 2023-06-13 CC++面试题编写类String构造析构赋值函数文章基础课C语言基础
教你如何从C/C++编程生成执行文件 C/C++程序编译步骤之如何生成可执行文件电子计算机所使用的是由“0”和“1”组成的二进制数,二进制是计算机的语言的基础。计算机发明之初,人们只能降贵纡尊,用计算机的语言去命令计算机干这干那,一句话,就是写出一串串由“0”和“1&rdquo... 2023-06-13 CC++编程执行文件文章基础课C语言基础