// ohne Parameter func print1() { print("hallo") } print1() // mit Parameter a func print2(a:Int32) { print("a", a) } print2(33) // mit Parameter inch, Rueckgabewert func Inch2Cm(inch:Double) ->Double{ return inch*2.54 } let cm=1.23 let inch=Inch2Cm(cm) / mit Parameter a und b, Rueckgabewert func add1(a:Int32, b:Int32)->Int32{ return a+b; } // nur erster Parameter hat keinen Namen let c = add1(12,b: 33) // Ref-Parameter, inout-Parameter func add2(a:Int32, b:Int32, inout c:Int32 ){ c=a+b; } var c2:Int32=0 add2(12,b: 33, c:&c2) // Tupel-Rückgabewert a) unbenannt func addsub(a:Int32, b:Int32)->(Int32, Int32){ return (a+b,a-b) } var items=addsub(12,b:4) print("add: \(items.0) sub: \(items.1)") b) benannt print("add: ",items.add,"sub: ",items.sub) func addsub(a:Int32, b:Int32)->(add:Int32, sub:Int32){ return (a+b,a-b) } var items=addsub(12,b:4) print("add: ",items.add,"sub: ",items.sub) print("add: \(items.add) sub: \(items.sub)")