CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Bash et C

Keevin72
Keevin72
Niveau 7
28 avril 2008 à 19:16:54

Bonjour,

J'ai un petit problème, pour des raisons de conaissances, j'ai réalisé un programme en deux partie avec deux languages : bash et C.

Donc voila, mon problème, c'est que je n'arrive pas à transmettre les variables obtenus avec mon script en bash dans mon programme en C...

ps: je suis sous linux

Merci d'avance :)

godrik
godrik
Niveau 30
28 avril 2008 à 19:46:13

passes les en arguments du binaire C.
tu les récupéreras dans les variables argv passés en parametre a main.

Keevin72
Keevin72
Niveau 7
28 avril 2008 à 19:53:08

Merci pour ta réponse mais je fais ça comment ?

Si tu peux me pontrer sur cet exemple, ça m'aiderai :

BASH:

$ma_variable_bash=bonjour

C :

int main()
{

printf("La variable du script bash est : %ld", ma_variable_bash);

}
return 0;

elhuron
elhuron
Niveau 6
28 avril 2008 à 20:21:30

Je sais pas si tu le sais déja, mais il y a plus interressant, selon moi.

Tu geres tout en C, et pour faire tes appels bash, il te suffit de faire :
system("commande en bash");

Keevin72
Keevin72
Niveau 7
28 avril 2008 à 20:31:07

euh je savais pas, merci beaucoup !
Je vais essailler avec ça :)

Mais si vous pouviez quand meem m'expliquer ce qu'a dit grdrik, c'est pas de refus

dnob700
dnob700
Niveau 10
28 avril 2008 à 20:33:22

keevin : comment est lancé ton programme C ?

Si tu fait :

$ma_variable_bash = bonjour

  1. il faut un $ ici ? j'aurais dit que non

et ensuite

programme

  1. où programme est le nom de ton programme en C

alors tu peut faire :

programme ${ma_variable_bash}

et ton main devient :
int main(int argc, char** argv)
{
printf("la variable est : %s",argv[1]);
}

Tu peut aussi faire en bash, "export ma_variable_bash" et ensuite récupérer la variable avec la fonction getenv(3).
}

Chaos_Clad
Chaos_Clad
Niveau 10
28 avril 2008 à 20:55:07

system c'est pas une fonction qui est super pas portable ?

________________________________________
Ma vidéo du moment :
http://youtube.com/watch?v=96Fm5SPsjD0 (Les Kiss Kool, à voir absolument :coeur: )

"Suicide par défénestration : encore une victime de Qt :( "

dnob700
dnob700
Niveau 10
28 avril 2008 à 21:06:27

system est une fonction complètement portable. C'est les appels que l'on peut faire avec qui ne le sont pas.

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Création de sites web
  • Programmation
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware
La vidéo du moment