Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >当我使用不同的编译器时,会得到不同的输出。

当我使用不同的编译器时,会得到不同的输出。
EN

Stack Overflow用户
提问于 2022-04-29 13:47:49
回答 1查看 63关注 0票数 -1

我试图解决使用C的问题,但在不同的编译器中得到了不同的输出。首先,我试了gcc,没有错误,但当我使用clang时,输出发生了变化。

问题:

给定五个正整数,通过精确地求和五个正整数中的四个,找到可以计算的最小值和最大值。然后将各自的最小值和最大值打印为两个空格分隔的长整数的一行。

样本输入:1 2 3 4 5

样本输出:10 14

10 =1+2+3+4 x 14 =2+3+4+5

当我使用clang:1 14时的输出

以下是代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <stdio.h>

void  miniMaxSum(int *a, int b) {

    int sums[5] = { b, b, b, b, b };
    int min = *a, max = *a;
    for (int j = 0; j < 5; j++) {
        sums[j] -= *(a + j);
        if (sums[j] < min)
            min = sums[j];
        if (toplamlar[j] > max)
            max = sums[j];
    }

    printf("%d %d\n", min, max);
}

int main() {

    int numbers[5] = { 0, 0, 0, 0, 0 };
    int sum;
    for (int i = 0; i < 5; i++) {
        scanf("%d ", &numbers[i]);
        toplam += numbers[i];
    }

    miniMaxSum(numbers, sum);

    return 0;
}

编辑:对不起,为了理解起见,我将变量名更改为英文,但忘记了toplam (sum)和toplamlar (sums)。

EN

回答 1

Stack Overflow用户

发布于 2022-04-29 13:56:28

假设您为非土耳其语者翻译了一些变量名为英语,变量sum (toplam)未初始化,导致未定义行为。未定义行为的一个常见症状是不同系统/编译器上的不同行为。

注意,只需搜索数组中的最小值和最大值,就可以简化代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#include <stdio.h>

void miniMaxSum(const int *a, int sum) {
    int min = a[0], max = a[0];
    for (int j = 1; j < 5; j++) {
        if (sums[j] < min)
            min = sums[j];
        if (sums[j] > max)
            max = sums[j];
    }
    printf("%d %d\n", sum - max, sum - min);
}

int main() {
    int numbers[5] = { 0, 0, 0, 0, 0 };
    int sum = 0;
    for (int i = 0; i < 5; i++) {
        scanf("%d ", &numbers[i]);
        sum += numbers[i];
    }

    miniMaxSum(numbers, sum);

    return 0;
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72063982

复制
相关文章
使用log4j配置不同文件输出不同内容
敲代码中很不注意写日志,虽然明白很重要。今天碰到记录日志,需要根据内容分别输出到不同的文件。 参考几篇文章: 感觉最详细:http://blog.csdn.net/azheng270/article/details/2173430/ 喜欢博客园的日志风格,第一篇参考文章就是它:http://www.cnblogs.com/alipayhutu/archive/2012/06/21/2558249.html 写好的模板,直接修改就可以,虽然不满足我的需求:http://blog.csdn.net/rsun1/
Ryan-Miao
2018/03/13
3K0
使用log4j配置不同文件输出不同内容
EMLOG通过不同域名使用不同的模板
只在emlog根目录的index.php简单修改就能实现,也可以做多用户二级域名调用不同的模板。当然也可以修改模板不同域名显示不同用户的文章。 $templet=Option::get('nonce_templet'); $the_host = $_SERVER['HTTP_HOST']; if ($the_host=='i.isiyuan.net') {////判断域名或者浏览器UA使用不同的前台模板 $templet='pink';//前台模板名 } define('TEMPLAT
Youngxj
2018/06/06
2.1K0
C++ 中不同的换行输出的区别
除了都是输出一个换行,两者唯一的区别是,std::endl 可以刷新输出缓冲区,而 \n 不会。说白了就是下面的代码,
ClearSeve
2022/02/11
1.3K0
使用Matlab划分系统聚类树,得到不同的类的聚类分析。
1、点击[命令行窗口] 2、按<Enter>键 3、点击[命令行窗口] 4、按<Enter>键 5、点击[命令行窗口] 6、按<Enter>键
裴来凡
2022/05/28
5260
使用Matlab划分系统聚类树,得到不同的类的聚类分析。
Emlog不同分类的日志使用不同模板的方法
大家对Emlog有一定了解的,就知道Emlog日志模板文件是echo_log.php,实现这个功能就是从这个模板文件修改开始!首先在echo_log.php最开始的部分前面,加入以下代码
用户8099761
2023/05/10
3980
npm install和cnpm install时的不同
npm 5版本,在延续npm 3扁平化依赖包安装方式的基础上,新增了一个package-lock.json文件。package-lock.json的主要作用就是锁定依赖项的安装目录和依赖包的版本信息。
kirin
2020/12/29
2.7K0
Spring 和 Mybatis 使用不同的数据源会怎样?
本篇文章要讨论的一个问题点, 给Spring和Mybatis设置不同的数据库数据源会怎样? 注意. 正常情况下一定要给Spring和Mybatis设置相同的数据库数据源. 案例代码位置 https:
书唐瑞
2022/06/02
5640
Spring 和 Mybatis 使用不同的数据源会怎样?
不同的网络下下载不同的图片
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010105969/article/details/53285158
用户1451823
2018/09/13
9920
不同的GSE数据集有不同的临床信息,不同的分组技巧
Jimmy大神怎么说过,只有多做、多错,才能真正的掌握。所以下面通过几个实战来说明。
生信技能树
2019/11/11
9.3K0
解决Nginx+Tomcat时ContextPath不同的问题
项目前端模板使用Thymeleaf,在对各种URL进行格式化输出时,都使用@{uri}代码。它会自动读取项目部署的虚拟路径,添加到URI的前端输出。
程序猿讲故事
2019/09/27
1.9K0
解决Nginx+Tomcat时ContextPath不同的问题
[代码结构设计]根据不同条件使用不同实现类的业务代码设计
这样大家可能不是太理解。举个例子,现在大街小巷上的商户都采用了聚合支付的支付方式,聚合支付也就是商户柜台前放了一个支持支付宝、微信、京东钱包、银联等等的二维码,用户可以通过任意一款支付APP进行支付。
云枭
2018/11/08
2.3K0
输出不同像元大小的批量重采样方法
本文主要介绍的内容是一种基于ArcGIS ModelBuilder输出不同像元大小的批量重采样方法
陈南GISer
2021/08/18
1.2K0
输出不同像元大小的批量重采样方法
本文主要介绍的内容是一种基于ArcGIS ModelBuilder输出不同像元大小的批量重采样方法
陈南GISer
2021/08/18
1.1K0
jenkins给不同的用户分配不同的任务
系统管理——》全局安全配置 ——》授权策略 ——》选择 Role-Based Strategy
dogfei
2020/07/31
2K0
git为不同的项目设置不同的邮箱
在我们使用Git开发项目的时候,可能经常会碰到个人和公司开发的项目都在一台机器上的情况。不管你们有没有,反正我是碰到了。因为公司有公司自己分配的邮箱,而我自己喜欢用自己的邮箱开发自己的项目。这样可能会导致邮箱混用的情况。
魔王卷子
2019/05/31
1.3K0
使用 AutoMapper 自动映射模型时,处理不同模型属性缺失的问题
使用 AutoMapper 可以很方便地在不同的模型之间进行转换而减少编写太多的转换代码。不过,如果各个模型之间存在一些差异的话(比如多出或缺少一些属性),简单的配置便不太行。本文帮助你解决这个问题。
walterlv
2023/10/23
6710
word 2007 不同章节插入不同样式的页码,不同的页眉
关键是需要插入“分节符” 在两章之间插入“下一页”,就可以把两章独立开。然后就可以独立的设置页码和页眉了。 (如果已经写好了全部内容再插入“下一页”,那么会在下一页的第一行出现一行空行,这时候可以按一
用户1258909
2018/07/04
1.2K0
uniapp根据不同的状态渲染不同的标签
<view class="text-grey text-xs"> <button v-if="item.isLeave === 0">离厂解绑</button> <span v-else > {{item.leaveTime | formatDate }} </span> </view> json数据 { "msg": "查询成功", "total": 15, "c
王小婷
2021/07/08
1.6K0
不同的strcmp
该文介绍了在Android和iOS系统中所使用的strcmp函数的实现细节和差异。首先介绍了Android中strcmp的实现,然后说明了iOS中strcmp的实现。这两个实现的主要区别在于:1)对于字符串结束标志的处理方式不同;2)对于指针比较操作的方式不同。在Android中,以0作为字符串结束标志,在iOS中,以'\0'作为字符串结束标志。此外,在Android中,比较操作符为“!=”,在iOS中为“<”。
梦里茶
2017/12/29
1K0
点击加载更多

相似问题

当使用两个不同的编译器时,我得到了不同的输出

10

当我从“??”更改为“不??”标志时,得到不同的输出。

13

当我使用不同的函数时,为什么我得到两个不同的输出?

15

不同编译器的不同输出

12

当我使用变量而不是len函数时,为什么得到不同的输出?

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文