碰到这样一段代码:
char c[]= "abc";
while(*c)
{
printf("%c",*c);
c++;
}

错误定位到   c++ ; 这一行,提示: '++'需要左值。

而这样写就没问题。
char *c= "abc";
while(*c)
{
printf("%c",*c);
c++;
}

要了解这个问题为什么会发生,先得了解”左值“是个什么??

左值和右值
在c/c++中,每个变量都有与其相关联的2个值。
数据值:又称右值,被存储在某段内存内。
地址值:又称左值,存储数据值的内存块的地址。

那第一段代码为什么会说需要左值(即地址值)呢?
那得先看看 c++(后增量)和++c(前增量)这2段代码的实际意义。

c++:
{
char *b=c;
c=c+1;
return b;
}

++c:
{
c=c+1;
return c;
}

'++' needs l-value的更多相关文章

  1. JavaWeb 后端 <二> 之 Servlet 学习笔记

    一.Servlet概述 1.什么是Servlet Servlet是一个运行在服务器端的Java小程序,通过HTTP协议用于接收来自客户端请求,并发出响应. 2.Servlet中的方法 public v ...

  2. HTML5 3D 粒子波浪动画特效DEMO演示

    需要thress.js插件:     http://github.com/mrdoob/three.js // three.js - http://github.com/mrdoob/three.js ...

  3. 排序算法----基数排序(RadixSort(L))单链表智能版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  4. VC 中与字符串相关的宏 _T、TEXT,_TEXT、L 的作用

    CSDN原博文:http://blog.csdn.net/houkai363/article/details/8134787 遇到了:不能将参数 1 从“const char [5]”转换为“LPCT ...

  5. 排序算法----基数排序(RadixSort(L,max))单链表版本

    转载http://blog.csdn.net/Shayabean_/article/details/44885917博客 先说说基数排序的思想: 基数排序是非比较型的排序算法,其原理是将整数按位数切割 ...

  6. BZOJ 1212: [HNOI2004]L语言 [AC自动机 DP]

    1212: [HNOI2004]L语言 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1367  Solved: 598[Submit][Status ...

  7. latex均方极限符号l.i.m在lyx下的输入方法

    $\mathop{l.i.m}\limits_{x\to +\infty}$ 命令说明: 1.指定数学环境$$ 2.\mathop{l.i.m}指数学符号自定义为l.i.m 3.\limits_{x\ ...

  8. 求单链表L各结点的阶乘之和(c语言)

    链表需要用到指针 阶乘需要用到递归 链表中的注意事项: 1.链表L是否等于NULL ----------是循环结束的条件 2.链表L->Data ---------取链表L中各个结点的值 3.L ...

  9. 模仿迅L看看<音频播放器> 实现点击进度条,跳转播放

    <Style x:Key="btnFallback" TargetType="{x:Type Button}"> <Setter Proper ...

  10. 通过ipv6访问 g o o g l e

    Google.Youtube.Facebook等均支持IPv6访问,IPv4网络的用户大部分都无法访问,比如Gmail,Google Docs等等各种相关服务.而该类网站大部分均已接入IPv6网络,因 ...

随机推荐

  1. 如何在Delphi里面查看程序的汇编代码?

    开发工具:Delphi 10 Update2 1,在源代码中设置至少一个断点,目的让我们进入调试模式. 2,启动调试,当程序进入调试模式,停留在我们设定的断点处时候,使用快捷键"CTRL+A ...

  2. step by step install Caffe

    Caffe + Ubuntu 14.04 + CUDA 8 + cudnn 8.0+Ananconda3+opencv3.0.0 //由于本人使用的是英文版ubuntu,没装汉语输入法,暂时就用蹩脚的 ...

  3. Python DES 加密解密,就是大家所谓想要的那个非常快速的方法

    这个要借助Crypto.Cipher这个插件来实现的,引用后只需要写如下代码即可 from Crypto.Cipher import DES class MyDESCrypt: key = chr(1 ...

  4. iOS开发 - OC - PCH文件使用

    一. PCH文件的作用 Xcode中,PCH文件在程序编译的时候会自动包含进去.也就是说PCH中的内容是全局的,可以使用在程序的任何地方,通过这个特性,我们可以概括到PCH的作用有以下几个方面: (1 ...

  5. android中MVP模式

    http://blog.csdn.net/ysh06201418/article/details/46534799 Android App整体架构设计的思考   http://blog.csdn.ne ...

  6. R&S学习笔记(二)

    1.OSPF:路由条目1万多条.收敛时间1s:ISIS:路由条目可以达2万多条,收敛时间50ms().ISIS在链路层上面,不依赖IP这层,这样给了它很多可能.比如IPv4, IPv6路由的混合承载, ...

  7. OpenSSLKey

    http://www.jensign.com/opensslkey/opensslkey.cs //************************************************** ...

  8. mysql数据库字符集的设置

    my.ini文件中clinet和mysqld中的写法不一样,要注意  [client]   port=3306   default-character-set=utf8      [mysqld]   ...

  9. mac上启动和停止mysql

    因调试需要,在mac上安装了mysql,安装方法网上大把,此处不赘述.启动和停止命令每次要手工敲,因此写个小脚本方便自己: startmysql.sh(/Applications/Develop/my ...

  10. Use filter in outlook2013

    1. 条件与条件间用分号隔开 2. search带附件的邮件:hasattachments:yes