Domande taggate «c»

C è un linguaggio di programmazione per computer generico utilizzato per sistemi operativi, giochi e altri lavori ad alte prestazioni ed è chiaramente distinto dal C ++. È stato sviluppato nel 1972 da Dennis Ritchie per l'uso con il sistema operativo Unix.


10
Perché argv include il nome del programma?
I programmi Unix / Linux tipici accettano gli input della riga di comando come argomento count ( int argc) e argomento vector ( char *argv[]). Il primo elemento di argvè il nome del programma, seguito dagli argomenti reali. Perché il nome del programma viene passato all'eseguibile come argomento? Ci sono …

7
I thread sono implementati come processi su Linux?
Sto sfogliando questo libro , Advanced Linux Programming di Mark Mitchell, Jeffrey Oldham e Alex Samuel. È del 2001, quindi un po 'vecchio. Ma lo trovo abbastanza buono comunque. Tuttavia, sono arrivato al punto in cui si differenzia da ciò che il mio Linux produce nell'output della shell. A pagina …

4
Perché un programma con fork () a volte stampa il suo output più volte?
Nel Programma 1 Hello worldviene stampato solo una volta, ma quando lo rimuovo \ned eseguo (Programma 2), l'output viene stampato 8 volte. Qualcuno può spiegarmi il significato di \nqui e come influisce fork()? Programma 1 #include <sys/types.h> #include <unistd.h> #include <stdio.h> #include <stdlib.h> int main() { printf("hello world...\n"); fork(); fork(); …
50 c  fork 

6
Quale versione della libreria C utilizza il mio sistema?
Come posso sapere con certezza quale libreria C userland viene utilizzata dal mio sistema? I possibili motivi per richiedere queste informazioni includono: C'è un gigantesco pacchetto sorgente che sto prendendo in considerazione per il download, che sono sicuro che farà i controlli corretti ed elenca una versione di libreria mininum, …


6
Come scaricare un file binario come letterale stringa C / C ++?
Ho un file binario che vorrei includere nel mio codice sorgente C (temporaneamente, a scopo di test), quindi vorrei ottenere il contenuto del file come una stringa C, qualcosa del genere: \x01\x02\x03\x04 Questo è possibile, forse utilizzando le utilità odo hexdump? Sebbene non sia necessario, se la stringa può passare …
39 c  hexdump  xxd 


2
Dimensione dello stack predefinita per pthreads
A quanto ho capito, la dimensione dello stack predefinita per un pthread su Linux è 16 KB. Sto ottenendo strani risultati sulla mia installazione di Ubuntu a 64 bit. $ ulimit -s 8192 Anche: pthread_attr_init(&attr); pthread_attr_getstacksize(&attr, &stacksize); printf("Thread stack size = %d bytes \n", stacksize); Prints Thread stack size = …
24 c  multithreading 

3
In che modo copy-on-write in fork () gestisce più fork?
Secondo Wikipedia (che potrebbe essere sbagliato) Quando viene emessa una chiamata di sistema fork (), viene creata una copia di tutte le pagine corrispondenti al processo padre, caricata in una posizione di memoria separata dal sistema operativo per il processo figlio. Ma questo non è necessario in alcuni casi. Considerare …
23 linux  c  fork 

2
POSIX garantisce i percorsi verso eventuali utility standard?
Da C, qual è il modo più semplice per eseguire un'utilità standard (ad esempio, ps) e nessun altro? Non POSIX garanzia che, per esempio, uno standard psè in /bin/pso devo resettare la variabile d'ambiente PATH per quello che ottengo con confstr(_CS_PATH, pathbuf, n);e quindi eseguire l'utilità attraverso il percorso-ricerca?
22 path  c  posix  exec 

4
crea un file di registro
Esiste un modo per creare un file di registro per mantenere alcuni dati in / var / log / con l'aiuto di alcune funzioni di libreria o chiamate di sistema in linguaggio c in linux. E voglio anche conoscere gli standard che dovremmo seguire per scrivere ed elaborare il registro. …
22 linux  logs  c  syslog 

4
Dopo fork (), da dove inizia l'esecuzione il bambino?
Sto cercando di imparare la programmazione UNIX e mi sono imbattuto in una domanda riguardante fork (). Capisco che fork () crea un processo identico al processo attualmente in esecuzione, ma da dove inizia? Ad esempio, se ho il codice int main (int argc, char **argv) { int retval; printf …
22 process  c  fork  api 



Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.