C语言中的三大定律

2016-02-19 20:20 13 1 收藏

下面图老师小编跟大家分享C语言中的三大定律,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~

【 tulaoshi.com - 编程语言 】

自己总结的,觉得能帮助初学者看透一些纷繁复杂的语法规则,理解C语言的真谛
  第一次发布,不一定正确,欢迎讨论、指正、补充
  
    1. 表达式定律
    
   !-- frame contents -- !-- /frame contents --   任何能产生数值结果的运算、操作都可以作为表达式,并可以放到任何需要数值结果的地方,只要数值类型能够匹配
  
    常见的可以产生数值结果的运算和操作
    
    算术、逻辑、位运算等
    ? :
    &、*等操作
    有返回值的函数
  
    常见的需要数值的地方有:
    
    赋值
    条件判定
    函数调用
  
    2. 类型定律
    
    任何类型都可以在任何需要类型的地方使用
    
    已知特例
    
    函数返回值不能定义为数组类型
    常用类型
    
    基本数据类型、指针、数组、结构……
    常见的需要类型的地方
    
    定义变量
    定义指针、数组和结构
    函数参数和返回值
    sizeof
  
    3. 参数传递定律
    
    函数调用时的参数传递永远都是传值调用,把实参的值拷贝给形参
    
    实参:调用者提供的参数
    形参:函数定义的参数
    基本数据类型无容置疑
    strUCt也无容置疑
    指针作为参数时,把指针变量的内容(就是其指向的内存地址)做了拷贝
    数组名作为参数时,把它等同于指针看待了
  
  
  
   更多内容请看C/C++进阶技术文档专题,或

来源:http://www.tulaoshi.com/n/20160219/1623399.html

延伸阅读
在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子...
作者在使用C语言编程实践过程中发现,尽管所编程序从语法上看正确的,能够调试通过,但实际执行结果却达不到程序编制的目的。现举几例说明如下,希望能起到帮助C语言初学者少走弯路的作用。 一.调用unlink失败的原因及解决方法 !-- frame contents -- !-- /frame contents -- unlink的原型在”io.h”中,...
#pragma#pragma 预处理指令详解 在所有的预处理指令中,#Pragma 指令可能是最复杂的了,它的作用是设定编译器的状态或者是指示编译器完成一些特定的动作。#pragma指令对每个编译器给出了一个方法,在保持与C和 C++语言完全兼容的情况下,给出主机或操作系统专有的特征。依据定义,编译指示是机器或操作系统专有的,且对于每个编译器都是不同的。 ...
1. exit 用于在程序运行的过程中随时结束程序,exit 的参数是返回给OS的。main函数结束时也会隐式地调用exit函数。exit函数运行时首先会执行由atexit()函数登记的函数,然后会做一些自身的清理工作,同时刷新所有输出流、关闭所有打开的流并且关闭通过标准I/O函数tmpfile()创建的临时文件。exit是结束一个进程,它将删除进程使用的内存空间,同...
当我在linux下写c语言的时候经常会遇到段错误. 所以就来细究一下.   段错误或段违规(segmentation violation) 查看Expert C Programming(Peter Van Der Linden) Pg.156 解释到段错误是由于内存管理单元(MMU)的异常所致, 而该异常则通常是由于解除引用一个未初始化或非法的指针引起. 就是指针正在引用一个并不位于你的地址空间中的地址....

经验教程

700

收藏

57
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部