在C++的for循环中,for(初始化;条件;更新)的三个参数都是可选的,你可以不写其中的一个、两个,甚至全部三个参数。1.不写初始化如果循环变量已经在循环外部定义并初始化,可以省略for循环中的初始化部分。例子:inti=0;//初始化在外部完成for(;i=5){break;//手动退出循环}cout=5){break;//手动退出循环}cout<
VS code 之 c++远程开发环境搭建
汝何秀
linuxvscode
文章目录VScode之c/c++远程开发环境搭建1.基本环境2.远程主机的开发环境搭建3.本地vscode的配置配置ssh选项4远程开发教程VScode之c/c++远程开发环境搭建1.基本环境本地主机:VisualStudioCode远程主机:CentOS72.远程主机的开发环境搭建安装环境的压缩包:dev_env_install.tar.gz解压文件夹:repo自动安装脚本为:dev_env.s
【花雕学编程】Arduino FOC 之四连杆机构轮腿机器人的复杂路径规划
驴友花雕
机器人嵌入式硬件单片机c++Arduino动手做四连杆机构轮腿机器人的复杂路径规划
Arduino是一个开放源码的电子原型平台,它可以让你用简单的硬件和软件来创建各种互动的项目。Arduino的核心是一个微控制器板,它可以通过一系列的引脚来连接各种传感器、执行器、显示器等外部设备。Arduino的编程是基于C/C++语言的,你可以使用ArduinoIDE(集成开发环境)来编写、编译和上传代码到Arduino板上。Arduino还有一个丰富的库和社区,你可以利用它们来扩展Ardui
第十三届蓝桥杯大赛软件赛决赛C/C++ 大学 B 组
Kent_J_Truman
蓝桥杯蓝桥杯
A【2022——暴力DP/优雅背包】-CSDN博客B【钟表——类日期问题】-CSDN博客C【卡牌——二分】-CSDN博客D【最大数字——DFS】-CSDN博客E【出差——Dijkstra】-CSDN博客F【费用报销——01背包】-CSDN博客G【故障——条件概率】-CSDN博客H【机房——LCA】-CSDN博客I【齿轮——优化(预处理,去重,哈希)】-CSDN博客J【搬砖——经典带贪心01背包(背
RabbitMQ复习
SJLoveIT
rabbitmq分布式
消息中间件的作用:(1)异步处理(2)应用解耦(3)流量削峰消息中间件的缺点:引入了新的东西,也就增加了新的故障点。比如消息中间件挂了,影响系统的可用性。两种框架:JMS和AMQP最大的区别是JMS是是javaapi,对跨平台的支持较差,但在纯java技术栈内首选。AMQP是跨平台的,序列化方式选json,不管你是java,php,C/C++,python,都能处理RabbitMQ实现的事AMQP
C C++最全Linux下TCP IP编程--TCP实战_linux tcp,2024最新网易C C++面试题目
2401_84973304
程序员c语言c++学习
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。需要这份系统化的资料的朋友,可以添加戳这里获取一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!printf("====waitingforcl
【模型部署】大模型部署工具对比:SGLang, Ollama, VLLM, LLaMA.cpp如何选择?
深度求索者
llama人工智能
在选择大模型部署工具时,需要考虑多个因素,包括性能、支持的语言和模型、硬件支持、易用性以及社区支持等。以下是对比分析:性能VLLM(VirtualTensorLanguage):VLLM是一个高性能的推理库,特别适用于长序列任务。它通过虚拟张量技术优化了内存使用,并支持多GPU加速,适合需要高性能推理的场景。LLaMA.cpp:这是一个针对C++优化的LLaMA模型实现,特别适合在资源受限的环境中
二维前缀和(C++))
落溪于梦
c++开发语言
题目描述:给定一个n×m的矩阵,其中每个元素为整数。你需要回答q个查询,每个查询给出一个矩形区域的左上角(x1,y1)和右下角(x2,y2),你需要计算这个矩形区域内的元素之和。输入格式:第一行包含三个整数n,m,q,分别表示矩阵的行数、列数和查询次数。接下来n行,每行包含m个整数,表示矩阵的元素。接下来q行,每行包含四个整数x1,y1,x2,y2,表示一个查询。输出格式:对于每个查询,输出一个整
QT——c++界面编程库
孩之
qtc++开发语言
非界面编程QT编译的时候,依赖于.pro配置文件:SOURCES:所有需要参与编译的.cpp源文件HEADERS:所有需要参与编译的.h头文件QT:所有需要参与编译的QT函数库.pro文件一旦修改,注意需要键盘按ctrl+s才能加载最新的配置文件标准输出:QDebug类#includeqDebug()#include#include#include#include#includeintmain(i
C#调用C的Dll(类型对照)
未来无限
C#Winform设计C#.dll类型
//C++中的DLL函数原型为//extern“C”__declspec(dllexport)bool方法名一(constchar*变量名1,unsignedchar*变量名2)//extern“C”__declspec(dllexport)bool方法名二(constunsignedchar*变量名1,char*变量名2)//C#调用C++的DLL搜集整理的所有数据类型转换方式,可能会有重复或者
ROS2入门教程—创建ROS2功能包(C++版)
Roar冷颜
ROS2入门教程其他
ROS2入门教程—创建ROS2功能包(C++版)1ROS2中的功能包2创建功能包3编译功能包4设置环境变量5运行功能包6功能包中的内容7修改package.xml文件 功能包是ROS2中组织代码的基本容器,方便我们编译、安装、分发开发的代码,一般来讲,每个功能包都是用来完成某项具体的功能相对完整的单元。1ROS2中的功能包 ROS2中的功能包可以使用CMake或者Python两种方式来编译(本
【C++】深入理解C++虚函数与纯虚函数
TsuanS
c++开发语言
本文由简悦SimpRead转码,原文地址blog.csdn.net文章目录一、虚函数(VirtualFunction)1.1定义和作用1.2实现原理1.3示例代码1.4虚函数的重写定义规则注意事项示例1.5基类和派生类的虚函数表**示例理解**二、纯虚函数(PureVirtualFunction)2.1定义和作用2.2示例代码三、总结在C++面向对象编程中,多态性是其三大特性之一(封装、继承和多态
基于QT的电子木鱼小游戏(C/C++)
今天你debug了嘛?
qtqtc语言c++
文章目录前言今年最火爆的解压小游戏电子木鱼,现在许多软件都上架了这个小程序。我在网上看了一下基本上都是用py和Java写的,所以我用QT重新写了一下,作为小白练手项目非常适合一、界面展示二、功能模块1)木鱼缩放2)功德+1显示3)音乐4)自动5)延时6)完整代码前言今年最火爆的解压小游戏电子木鱼,现在许多软件都上架了这个小程序。我在网上看了一下基本上都是用py和Java写的,所以我用QT重新写了一
windows shell里的文件系统<用delphi写的>
hemeinvyiqiluoben
PIDL-【PIDL简介】从Windows95开始,微软公司为操作系统引入了新的外壳界面,新的外壳从根本上改变了应用程序同操作系统的结合方式,遗憾的是微软公司对于发布同外壳相关的编程信息方面显得很吝啬,可以得到的资料非常少,而且质量也不高。对于Delphi开发者来说,情况就更为严重了,因为几乎所有的WindowsAPI文档都是针对C/C++程序员的,但是Nothingisimpossible,在本
【QT开发教程】使用Qt进行跨平台(Windows、macOS、Linux、iOS和Android)开发的最佳实践
I'mAlex
QT开发教程qt开发语言跨平台
Qt是一个强大的跨平台C++框架,使得开发者可以编写一次代码并在多个平台上运行,包括Windows、macOS、Linux、iOS和Android。在跨平台开发过程中,遵循一些最佳实践可以帮助我们提高开发效率和代码质量。本文将介绍使用Qt进行跨平台开发的最佳实践。博主简介:现任阿里巴巴嵌入式技术专家,15年工作经验,深耕嵌入式+人工智能领域,精通嵌入式领域开发、技术管理、简历招聘面试。CSDN优质
函数重载(overload) 默认参数
schedule___
cpp
函数重载规则函数名相同参数个数、类型、顺序不同注意返回值类型与函数重载无关调用函数时,实参的隐式类型转换可能会产生二义性。本质采用了namemangling或者叫namedecoration的技术c++编译器会对符号名(函数名)进行改变、修饰不同编译器(MSVC,g++)有不同的生成规则通过ida打开[vs_release_禁止优化]可以看到默认参数规则默认参数只能按照从右到左的顺序函数同时有声明
后端开发面经系列 -- 字节跳动C/C++一面面经
阿Q技术站
面经字节跳动面经c++面经字节跳动职场经验
字节跳动C/C++一面面经公众号:阿Q技术站来源:https://www.nowcoder.com/feed/main/detail/74bf25e202ea4fcba09c01dae530ff9b1、虚拟地址是怎么转化到物理地址的?页表的构成?mmu了解过吗?虚拟地址到物理地址的转换是通过操作系统中的内存管理单元(MemoryManagementUnit,MMU)来实现的。MMU是计算机系统中的
字节后端面试面经综合分析
阿贾克斯的黎明
javajava开发语言go
目录一、字节豆包后端一面面经解析(一)自我介绍(二)实习项目拷打(三)手撕代码(四)C++多态相关问题(五)智能指针相关问题(六)malloc相关问题(七)mmap相关问题(八)多线程相关问题(九)MySQL存储引擎相关问题(十)Redis持久化相关问题(十一)前沿知识相关问题(十二)反问环节二、字节广告后端一面面经解析(一)自我介绍(二)实习项目拷打(三)文件系统相关问题(四)LinuxIO多路
[H滑动窗口] lc239. 滑动窗口最大值(模拟+数据结构+单调队列+滑动窗口模板题)
Ypuyu
LeetCode数据结构
文章目录1.题目来源2.题目解析1.题目来源链接:239.滑动窗口最大值相关博文:[单调队列+模板]单调队列模板题单:待补充2.题目解析一道单调队列模板题,不赘述了吧。看看日后有没有写不出来来补题、或者有新感悟的时候再来看看。注意一下C++中双端队列的用法即可。时间复杂度:O(n)O(n)O(n)空间复杂度:O(n)O(n)O(n)C++STL::deque写法:classSolution{pub
C++中迭代器与指针
DevangLic
BraveBridgec++开发语言学习算法数据结构
在C++中,指针和迭代器虽然在某些方面表现出相似的行为,但它们的设计目标、使用场景以及功能上有明显的不同。以下是它们的共性和区别,以及通过代码进行说明:1.共性:遍历容器元素:指针和迭代器都可以用来遍历数组或其他连续内存区域,或者STL容器中的元素。解引用操作:通过解引用操作符*可以访问指针或迭代器所指向的对象。算术运算:两者都支持自增(++)和自减(–)运算符,用于移动到下一个或前一个元素。示例
C++编译过程详解
采采卷耳77
C/C++c++
编译步骤:一、编译:预处理,编译,汇编二、链接预处理:生成“.ii文件”,对所有的#进行预处理,对include进行链接,对宏macro进行替换(预处理器cpp(cpreprocessor))g++生成的文件后缀名为.ii,gcc生成的文件后缀名为.i。头文件中不能放函数的以及变量定义,因为当同时编译多个编译单元并连接为一个可执行文件的时候,如果这些编译单元中有重复引用同一个头文件,,如果头文件中
C/C++程序员为什么要了解汇编?了解汇编有哪些好处?如何学习汇编?
dvlinker
C/C++实战专栏C/C++软件开发从入门到实战C/C++汇编为什么要了解汇编了解汇编有哪些好处如何学习汇编IDA反汇编工具汇编指令
目录1、概述2、从汇编的角度去理解问题的若干实例说明2.1、使用空指针去访问类的数据成员或调用类的虚函数为什么会引发崩溃?2.2、从汇编代码的角度去理解多线程的执行细节,去理解多线程在访问共享资源时为什么要加锁2.3、使用Windbg静态分析dump时先从崩溃的那条汇编指令中得到初步的线索3、了解汇编有哪些具体的好处?3.1、在代码中插入汇编代码块,提升代码的执行效率3.2、在分析C++软件异常时
第十四届蓝桥杯大赛软件赛国赛C/C++ 大学 B 组 AB路线
@liu666
蓝桥杯c语言c++
//bfs1000100010不会超时#includeusingnamespacestd;#defineintlonglongconstintn=1e3+11;inta,b,c,h[n][n][12],k[4][2]={0,1,0,-1,1,0,-1,0};chart[n][n];structs{intx,y,z,w;};signedmain(){ios::sync_with_stdio(fals
web报表工具FineReport常见的数据集报错错误代码和解释
老A不折腾
web报表finereport代码可视化工具
在使用finereport制作报表,若预览发生错误,很多朋友便手忙脚乱不知所措了,其实没什么,只要看懂报错代码和含义,可以很快的排除错误,这里我就分享一下finereport的数据集报错错误代码和解释,如果有说的不准确的地方,也请各位小伙伴纠正一下。
NS-war-remote=错误代码\:1117 压缩部署不支持远程设计
NS_LayerReport_MultiDs=错误代码
Java的WeakReference与WeakHashMap
bylijinnan
java弱引用
首先看看 WeakReference
wiki 上 Weak reference 的一个例子:
public class ReferenceTest {
public static void main(String[] args) throws InterruptedException {
WeakReference r = new Wea
Linux——(hostname)主机名与ip的映射
eksliang
linuxhostname
一、 什么是主机名
无论在局域网还是INTERNET上,每台主机都有一个IP地址,是为了区分此台主机和彼台主机,也就是说IP地址就是主机的门牌号。但IP地址不方便记忆,所以又有了域名。域名只是在公网(INtERNET)中存在,每个域名都对应一个IP地址,但一个IP地址可有对应多个域名。域名类型 linuxsir.org 这样的;
主机名是用于什么的呢?
答:在一个局域网中,每台机器都有一个主
oracle 常用技巧
18289753290
oracle常用技巧 ①复制表结构和数据 create table temp_clientloginUser as select distinct userid from tbusrtloginlog ②仅复制数据 如果表结构一样 insert into mytable select * &nb
使用c3p0数据库连接池时出现com.mchange.v2.resourcepool.TimeoutException
酷的飞上天空
exception
有一个线上环境使用的是c3p0数据库,为外部提供接口服务。最近访问压力增大后台tomcat的日志里面频繁出现
com.mchange.v2.resourcepool.TimeoutException: A client timed out while waiting to acquire a resource from com.mchange.v2.resourcepool.BasicResou
IT系统分析师如何学习大数据
蓝儿唯美
大数据
我是一名从事大数据项目的IT系统分析师。在深入这个项目前需要了解些什么呢?学习大数据的最佳方法就是先从了解信息系统是如何工作着手,尤其是数据库和基础设施。同样在开始前还需要了解大数据工具,如Cloudera、Hadoop、Spark、Hive、Pig、Flume、Sqoop与Mesos。系 统分析师需要明白如何组织、管理和保护数据。在市面上有几十款数据管理产品可以用于管理数据。你的大数据数据库可能
spring学习——简介
a-john
spring
Spring是一个开源框架,是为了解决企业应用开发的复杂性而创建的。Spring使用基本的JavaBean来完成以前只能由EJB完成的事情。然而Spring的用途不仅限于服务器端的开发,从简单性,可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。其主要特征是依赖注入、AOP、持久化、事务、SpringMVC以及Acegi Security
为了降低Java开发的复杂性,
自定义颜色的xml文件
aijuans
xml
<?xml version="1.0" encoding="utf-8"?> <resources> <color name="white">#FFFFFF</color> <color name="black">#000000</color> &
运营到底是做什么的?
aoyouzi
运营到底是做什么的?
文章来源:夏叔叔(微信号:woshixiashushu),欢迎大家关注!很久没有动笔写点东西,近些日子,由于爱狗团产品上线,不断面试,经常会被问道一个问题。问:爱狗团的运营主要做什么?答:带着用户一起嗨。为什么是带着用户玩起来呢?究竟什么是运营?运营到底是做什么的?那么,我们先来回答一个更简单的问题——互联网公司对运营考核什么?以爱狗团为例,绝大部分的移动互联网公司,对运营部门的考核分为三块——用
js面向对象类和对象
百合不是茶
js面向对象函数创建类和对象
接触js已经有几个月了,但是对js的面向对象的一些概念根本就是模糊的,js是一种面向对象的语言 但又不像java一样有class,js不是严格的面向对象语言 ,js在java web开发的地位和java不相上下 ,其中web的数据的反馈现在主流的使用json,json的语法和js的类和属性的创建相似
下面介绍一些js的类和对象的创建的技术
一:类和对
web.xml之资源管理对象配置 resource-env-ref
bijian1013
javaweb.xmlservlet
resource-env-ref元素来指定对管理对象的servlet引用的声明,该对象与servlet环境中的资源相关联
<resource-env-ref>
<resource-env-ref-name>资源名</resource-env-ref-name>
<resource-env-ref-type>查找资源时返回的资源类
Create a composite component with a custom namespace
sunjing
https://weblogs.java.net/blog/mriem/archive/2013/11/22/jsf-tip-45-create-composite-component-custom-namespace
When you developed a composite component the namespace you would be seeing would
【MongoDB学习笔记十二】Mongo副本集服务器角色之Arbiter
bit1129
mongodb
一、复本集为什么要加入Arbiter这个角色 回答这个问题,要从复本集的存活条件和Aribter服务器的特性两方面来说。 什么是Artiber? An arbiter does
not have a copy of data set and
cannot become a primary. Replica sets may have arbiters to add a
Javascript开发笔记
白糖_
JavaScript
获取iframe内的元素
通常我们使用window.frames["frameId"].document.getElementById("divId").innerHTML这样的形式来获取iframe内的元素,这种写法在IE、safari、chrome下都是通过的,唯独在fireforx下不通过。其实jquery的contents方法提供了对if
Web浏览器Chrome打开一段时间后,运行alert无效
bozch
Webchormealert无效
今天在开发的时候,突然间发现alert在chrome浏览器就没法弹出了,很是怪异。
试了试其他浏览器,发现都是没有问题的。
开始想以为是chorme浏览器有啥机制导致的,就开始尝试各种代码让alert出来。尝试结果是仍然没有显示出来。
这样开发的结果,如果客户在使用的时候没有提示,那会带来致命的体验。哎,没啥办法了 就关闭浏览器重启。
结果就好了,这也太怪异了。难道是cho
编程之美-高效地安排会议 图着色问题 贪心算法
bylijinnan
编程之美
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Random;
public class GraphColoringProblem {
/**编程之美 高效地安排会议 图着色问题 贪心算法
* 假设要用很多个教室对一组
机器学习相关概念和开发工具
chenbowen00
算法matlab机器学习
基本概念:
机器学习(Machine Learning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。
它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。
开发工具
M
[宇宙经济学]关于在太空建立永久定居点的可能性
comsci
经济
大家都知道,地球上的房地产都比较昂贵,而且土地证经常会因为新的政府的意志而变幻文本格式........
所以,在地球议会尚不具有在太空行使法律和权力的力量之前,我们外太阳系统的友好联盟可以考虑在地月系的某些引力平衡点上面,修建规模较大的定居点
oracle 11g database control 证书错误
daizj
oracle证书错误oracle 11G 安装
oracle 11g database control 证书错误
win7 安装完oracle11后打开 Database control 后,会打开em管理页面,提示证书错误,点“继续浏览此网站”,还是会继续停留在证书错误页面
解决办法:
是 KB2661254 这个更新补丁引起的,它限制了 RSA 密钥位长度少于 1024 位的证书的使用。具体可以看微软官方公告:
Java I/O之用FilenameFilter实现根据文件扩展名删除文件
游其是你
FilenameFilter
在Java中,你可以通过实现FilenameFilter类并重写accept(File dir, String name) 方法实现文件过滤功能。
在这个例子中,我们向你展示在“c:\\folder”路径下列出所有“.txt”格式的文件并删除。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
C语言数组的简单以及一维数组的简单排序算法示例,二维数组简单示例
dcj3sjt126com
carray
# include <stdio.h>
int main(void)
{
int a[5] = {1, 2, 3, 4, 5};
//a 是数组的名字 5是表示数组元素的个数,并且这五个元素分别用a[0], a[1]...a[4]
int i;
for (i=0; i<5; ++i)
printf("%d\n",
PRIMARY, INDEX, UNIQUE 这3种是一类 PRIMARY 主键。 就是 唯一 且 不能为空。 INDEX 索引,普通的 UNIQUE 唯一索引
dcj3sjt126com
primary
PRIMARY, INDEX, UNIQUE 这3种是一类PRIMARY 主键。 就是 唯一 且 不能为空。INDEX 索引,普通的UNIQUE 唯一索引。 不允许有重复。FULLTEXT 是全文索引,用于在一篇文章中,检索文本信息的。举个例子来说,比如你在为某商场做一个会员卡的系统。这个系统有一个会员表有下列字段:会员编号 INT会员姓名
java集合辅助类 Collections、Arrays
shuizhaosi888
CollectionsArraysHashCode
Arrays、Collections
1 )数组集合之间转换
public static <T> List<T> asList(T... a) {
return new ArrayList<>(a);
}
a)Arrays.asL
Spring Security(10)——退出登录logout
234390216
logoutSpring Security退出登录logout-urlLogoutFilter
要实现退出登录的功能我们需要在http元素下定义logout元素,这样Spring Security将自动为我们添加用于处理退出登录的过滤器LogoutFilter到FilterChain。当我们指定了http元素的auto-config属性为true时logout定义是会自动配置的,此时我们默认退出登录的URL为“/j_spring_secu
透过源码学前端 之 Backbone 三 Model
逐行分析JS源代码
backbone源码分析js学习
Backbone 分析第三部分 Model
概述: Model 提供了数据存储,将数据以JSON的形式保存在 Model的 attributes里,
但重点功能在于其提供了一套功能强大,使用简单的存、取、删、改数据方法,并在不同的操作里加了相应的监听事件,
如每次修改添加里都会触发 change,这在据模型变动来修改视图时很常用,并且与collection建立了关联。
SpringMVC源码总结(七)mvc:annotation-driven中的HttpMessageConverter
乒乓狂魔
springMVC
这一篇文章主要介绍下HttpMessageConverter整个注册过程包含自定义的HttpMessageConverter,然后对一些HttpMessageConverter进行具体介绍。
HttpMessageConverter接口介绍:
public interface HttpMessageConverter<T> {
/**
* Indicate
分布式基础知识和算法理论
bluky999
算法zookeeper分布式一致性哈希paxos
分布式基础知识和算法理论
BY
[email protected]
本文永久链接:http://nodex.iteye.com/blog/2103218
在大数据的背景下,不管是做存储,做搜索,做数据分析,或者做产品或服务本身,面向互联网和移动互联网用户,已经不可避免地要面对分布式环境。笔者在此收录一些分布式相关的基础知识和算法理论介绍,在完善自我知识体系的同
Android Studio的.gitignore以及gitignore无效的解决
bell0901
androidgitignore
github上.gitignore模板合集,里面有各种.gitignore : https://github.com/github/gitignore
自己用的Android Studio下项目的.gitignore文件,对github上的android.gitignore添加了
# OSX files //mac os下 .DS_Store
成为高级程序员的10个步骤
tomcat_oracle
编程
What
软件工程师的职业生涯要历经以下几个阶段:初级、中级,最后才是高级。这篇文章主要是讲如何通过 10 个步骤助你成为一名高级软件工程师。
Why
得到更多的报酬!因为你的薪水会随着你水平的提高而增加
提升你的职业生涯。成为了高级软件工程师之后,就可以朝着架构师、团队负责人、CTO 等职位前进
历经更大的挑战。随着你的成长,各种影响力也会提高。
mongdb在linux下的安装
xtuhcy
mongodblinux
一、查询linux版本号:
lsb_release -a
LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noa