Comment, en "C", print un hello world SANS importer aucune librairie ?

oddoo
2023-05-18 14:33:21

donc pas d'import à la stdio

Nigidune
2023-05-18 14:34:48

#include <unistd.h>

int main() {
const char message[] = "Hello, World!\n";
write(1, message, sizeof(message) - 1);
return 0;
}

Radarakt2
2023-05-18 14:35:01

Tu regardes le code qui se trouve dans la stdio le génie...

oddoo
2023-05-18 14:35:16

Le 18 mai 2023 à 14:34:48 :
#include <unistd.h> int main() { const char message[] = "Hello, World!\n"; write(1, message, sizeof(message) - 1); return 0; }

mais tu as importé #include <unistd.h> ici :hap:

Nigidune
2023-05-18 14:35:52

Le 18 mai 2023 à 14:35:16 :

Le 18 mai 2023 à 14:34:48 :
#include <unistd.h> int main() { const char message[] = "Hello, World!\n"; write(1, message, sizeof(message) - 1); return 0; }

mais tu as importé #include <unistd.h> ici :hap:

J'en sais rien moi je sais pas coder en C, j'ai demandé à ChatGPT :rire:

Hubert23
2023-05-18 14:36:30

'# include <unistd.h>

int main() {
const char message[] = "Hello, World!\n";
write(1, message, sizeof(message) - 1); // 1 correspond à la sortie standard (STDOUT_FILENO)

return 0;
}

Hubert23
2023-05-18 14:36:53

Le 18 mai 2023 à 14:35:52 :

Le 18 mai 2023 à 14:35:16 :

Le 18 mai 2023 à 14:34:48 :
#include <unistd.h> int main() { const char message[] = "Hello, World!\n"; write(1, message, sizeof(message) - 1); return 0; }

mais tu as importé #include <unistd.h> ici :hap:

J'en sais rien moi je sais pas coder en C, j'ai demandé à ChatGPT :rire:

ahi j'ai fait la mêmehttps://image.noelshack.com/fichiers/2022/24/6/1655577587-ahi-triangle-clopent.png

Cilonen
2023-05-18 14:37:36

Quel plateforme ? Ce sont les appels système qui font l'I/O généralement (syscalls sous linux)

erezan11
2023-05-18 14:38:31

Tu fais comme ça


void main() {
asm ("mov $1, %%eax;"
"mov $1, %%ebx;"
"mov $message, %%esi;"
"mov $13, %%edx;"
"syscall;"
:
:
: "%eax", "%ebx", "%esi", "%edx"
);
asm ("mov $60, %%eax;"
"xor %%ebx, %%ebx;"
"syscall;"
:
:
: "%eax", "%ebx"
);
}

char message[] = "Hello, World!\n";

Nigidune
2023-05-18 14:38:35

#include <sys/syscall.h>

#define SYS_WRITE 1
#define STDOUT 1

int main() {
const char message[] = "Hello, World!\n";
syscall(SYS_WRITE, STDOUT, message, sizeof(message) - 1);
return 0;
}

Autre réponse de chatGPT, apparement include syscall n'équivaut pas à importer une librairie (j'y comprends rien)

Cilonen
2023-05-18 14:40:53

Appels système = interface entre OS / ton programme donc là write c'est un appel système équivalent à ce que peut faire le printf

Le problème ici c'est que ta pas communiqué quel plateforme

Infos
Gestion du forum

contact@geevey.com

API disponible. Utilisez le paramètre "api" en GET, peu importe le contenu, sur une page du site.

Notes

    Partenaire: JVFlux
    Ce site n'est pas associé à Jeuxvideo.com ou Webedia. Nous utilisons seulement des archives publiques.
    Il est inutile de me spammer par e-mail pour supprimer un topic. Au contraire, en conséquence, je mettrais votre topic dans le bloc ci-dessous.
Non-assumage
    Personne n'a pas assumé de topic pour le moment.