zoukankan      html  css  js  c++  java
  • C++——C语言中的一些常见误区

    1.C语言中,编译针对的是单个源文件,链接针对的是整个项目。

    2.头文件中不应该放置变量定义,否则会造成链接错误。头文件只应该放置类型定义、函数的声明以及变量的声明。

    3.头文件中如果不加上#ifndef之类的预处理语句,很可能造成类型重复定义的编译期错误

    4.头文件中的函数声明是为了给编译器提供函数原型的参考,不是必须的。

    5.指针包含两重信息:

      a) 指针本身的value代表指向内存的起始位置

      b) 指针的类型标示着指向内存的单位大小。

    6.C语言的内存不具有属性,用什么类型的指针指向它,就把它解释为什么类型的数据。

    7.交换两个变量的关键是传递它们的指针,例如T类型传递T*作为参数。

    8.数组传参数时,一维数组例如int a[10] ,传递参数可以使用 int*;如果是二维数组int a[3][10],那么应该传递一维数组的指针 int (*a)[10].

    9.二维数组int a[10][5] , a[ i ]等价于*(a+i),而a[ i ][ j ]等价于*(*(a + i) + j)

    10.大小端问题:TCP传输,对于字符串不需要考虑大小端,对于int等需要考虑。总之就是对于以字节为逻辑单位的数据不需要考虑大小端。

    11.函数指针,包含了两种信息,第一是函数的内存地址,第二是类型信息,包含函数的参数列表以及返回值。(在前面的文章中有简单介绍函数指针)

  • 相关阅读:
    如何输出高精度时间差
    GetThreadTimes获取其它线程cpu时间
    12-Python基础之类与面向对象
    10-Python函数之递归
    09-Python基础之内置函数与匿名函数
    08-Python基础之迭代器与生成器
    07-Python基础之装饰器
    06-Python基础之函数进阶(嵌套,作用域)
    05-Python基础之函数基础
    04-Python基础之文件操作基础
  • 原文地址:https://www.cnblogs.com/gjn135120/p/4014279.html
Copyright © 2011-2022 走看看