Aller au contenu


Photo

PB avec passage données dans une Func (Swift 3)


  • Please log in to reply
1 reply to this topic

#1 patyom

patyom

    Grand(e) bavard(e)

  • Membres
  • PipPipPip
  • 333 Messages :
  • Sexe:Masculin
  • Localisation:Livernon (Lot)

Posté 25 mai 2017 - 11:56

J'ai un souci avec les fonctions.

Pourriez-vous me dire pourquoi ce code ne marche pas
en fait, je veux lire le fichier "file.txt" dont le contenu est :

 

Jason 16 male self programing
Josh 15 male friend art

func affichage(contents: String, sep: String) {
 
let lines = contents.components(separatedBy: "\n")
 
for line in lines {
let words = line.components(separatedBy: " ")
print("\(words[0]) is \(words[1]) and likes \(words[4])")
}
}
 
 
let file = "file.txt" // ficheir à lire
 
if let dir = FileManager.default.urls(for: .documentDirectory, in: .userDomainMask).first {
 
let path = dir.appendingPathComponent(file)
 
 
// Lecture
do {
let contents = try String(contentsOf: path, encoding: String.Encoding.utf8)
let sep = " "
// passage dans la fonction pour affichage résultats
affichage(contents: String, sep: String)
}
catch {/* erreur handling ici */}
 
 
}

C'est dans la manière dont je passe mes données dans la fonction que çà pèche.

A+


Ce message a été modifié par patyom - 25 mai 2017 - 11:59 .

MacBook Pro - 13" - 4Go - 250Go
Emac 1GHz - 640 MB - 40 Go

#2 jp

jp

    Touriste

  • Modérateurs
  • PipPipPipPipPipPipPipPipPip
  • 6 564 Messages :
  • Configuration:N/A
  • Sexe:Masculin
  • Localisation:Créteil

Posté 30 mai 2017 - 10:22

Salut !

 

Il faut que tu change

affichage(contents: String, sep: String)

en

affichage(contents:contents, sep:sep)

Il faut :

1/ Ne pas donner le type des arguments, le compilateur les connais déjà avec ton prototype.

2/ Donner les noms des arguments de la fonction (c'est un peu redondant ici, mais c'est nécessaire).


La phrase suivante est fausse. La phrase précédente est vraie.




0 utilisateur(s) en train de lire ce sujet

0 membre(s), 0 invité(s), 0 utilisateur(s) anonyme(s)