关于c语言中容易忽略的问题

原创 2007年10月08日 21:38:00

    在c语言学习过程中,有许多容易被人忽略的问题.我以前身受其害,所以决定将其共享出来,大家一起讨论.

  首先是大家最熟悉的输出函数printf( ).大家首先来看这样一个简单的程序.

#include<stdio.h>

 int main()
{
  int a[]={1,3,4};
  int *p=a;
 
  printf("The result is :%d  %d",*p,*(p++));
 
  return 0;

}

那么你认为结果会是多少呢? 

哈哈,不知你的结果是否正确呢?The result is: 3 3

为什么会是这样的呢?因为在c语言规定了printf在输出是从右向左的,*(p++)使其指向了a[1],*p也同样如此.

所以在学习中应该注意这些细节!

祝你们好运!!

 

 

DDJ书评(2004.2):Small Is Still Beautiful(有Pramatic系列哦)

Review by Gregory V. Wilson Copyright (C) Dr. Dobbs Journal, February, 2004 Time to confess: I prefe...
  • jiangtao
  • jiangtao
  • 2004-04-08 09:20:00
  • 2089

C语言中容易被忽略的细节(第一篇)

前言:本文的目的是记录C语言中那些容易被忽略的细节。我打算每天抽出一点时间看书整理,坚持下去,今天是第一篇,也许下个月的今天是第二篇,明年的今天又是第几篇呢?……我坚信,好记性不如烂笔头。 ...
  • linxin3333520
  • linxin3333520
  • 2014-12-10 17:22:33
  • 622

C语言中遇到的问题及解决方法

2012年5月5号; 问题:for语句和while语句后面有; 的情况。相当于 这是执行空循环,i会累加,但啥都不执行。直到不满足条件为止。 for(;;) ; while() ; 20...
  • frostwong
  • frostwong
  • 2012-05-06 10:36:01
  • 1241

C语言中容易忽略的问题

C语言中容易忽略的问题 1;关于在函数中调用数组时,若出现下面的函数语句    Int  func(long array[const static 5]) 其意思是: 数组是一个指向long的不...
  • xiaoqiang137549
  • xiaoqiang137549
  • 2014-04-27 11:02:18
  • 270

C语言中容易混淆的几个概念

基本解释   1、指针的本质是一个与地址相关的复合类型,它的值是数据存放的位置(地址);数组的本质则是一系列的变量。   2、数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只...
  • mcudoc
  • mcudoc
  • 2013-03-07 15:18:51
  • 483

c语言中的符号优先级问题

大部分运算符都有优先级的先后问题 据一些例子 1> if(flags & FLAGS) //其中flags 与 FLAGS 都是变量,想用来判断flags 与 FLAGS 在二进制上...
  • LordWingF
  • LordWingF
  • 2016-12-02 15:48:20
  • 835

C语言中关于插入法排序的源代码

  • 2008年12月20日 12:27
  • 567B
  • 下载

c陷阱与缺陷

  • 2012年10月09日 20:14
  • 368KB
  • 下载

关于C语言中单双引号的问题

#include int main() { if ( "{" =='{' ) printf("True\n"); else printf("Flase...
  • a720725
  • a720725
  • 2014-09-11 23:41:12
  • 739

c语言中关于时间的函数

本文从介绍基础概念入手,探讨了在C/C++中对日期和时间操作所用到的数据结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐述。本文还通过大量的实例向你展示了time.h头文件中声明的...
  • sven_007
  • sven_007
  • 2012-06-26 10:00:06
  • 4622
收藏助手
不良信息举报
您举报文章:关于c语言中容易忽略的问题
举报原因:
原因补充:

(最多只允许输入30个字)