首页
登录 | 注册

++操作在不同的平台的表现

首先来看看下面这个程序

#include <stdio.h>
int main(){
    int arr[]={6,7,8,9,10};
    int *ptr=arr;
    *(ptr++)+=123;
    printf("%d,%d",*ptr,*(++ptr));
    printf("%d,%d",*ptr,
*(ptr++));
    return 0;
}

在linux下编辑得到的结果是 8,8  9,8

而在windows下则得到结果 8,8  8,8

首先明确一点:printf从右边开始处理参数,也就是说会先处理程序中的*(++ptr)*(++ptr)

结果中差别主要在printf("%d,%d",*ptr,**(++ptr);中的第一个输出。

这里可能是 在linux下,将两个参数单独作为一个步骤,也就是说执行**(++ptr);以后就++操作。而在windows下是将printf作为一个整体操作,也就是等到printf结束以后才加加。


相关文章

  • 目前,容器存储是容器离不开的一个话题,对于无状态的Docker容器,容器重启时容器数据会自动清除,一些静态的数据我们可以通过配置文件或者在容器build时直接写死.但是对于数据库.日志文件等可以实时变化的数据,我们不能够通过这种方法存取,容 ...
  • 1.数据量 3.节点配置 5.性能 Meltwater每天要处理数百万量级的帖子数据,因此需要一种能处理该量级数据的存储和检索技术. 从0.11.X 版本开始我们就已经是Elasticsearch的忠实用户了.在经历了一些波折之后,最终我们 ...
  • 在本文中,我们将着重介绍如何将WijmoJS与Ionic一起使用,来创建一款移动端支持优先.快捷高效的应用程序.在之前的文章中,我们已经介绍了使用WijmoJS与Angular.React.Vue三大框架结合搭建您的Web应用程序.这篇将是 ...
  • 第三章:深入文本(3)
    颜色结构 在内部,Color结构以两种不同的方式存储颜色:  作为类型为double的红色,绿色和蓝色(RGB)值,范围从0到1.名为R,G和B的只读属性公开这些值. 作为类型为double的色调,饱和度和亮度值,其范围也是从0到1.这些值 ...
  • 使用open vswitch构建虚拟网络
    一.open vswitch简介 Open vSwitch是一个高质量的.多层虚拟交换机,使用开源Apache2.0许可协议,由 Nicira Networks开发,主要实现代码为可移植的C代码.它的目的是让大规模网络自动化可以通过编程扩展 ...
  • SQL Server横向扩展方案-P2P
    在上一篇文章中,介绍了SODA的相关的内容,我们本篇接着没有完成的话题继续. Peer-to-Peer Transactional Replication 翻译为中文就是"点到点的事务复制",简称P2P.P2P的技术在S ...

2020 unjeep.com webmaster#unjeep.com
12 q. 0.013 s.
京ICP备10005923号