Questions marquées «c»

C est un langage de programmation à usage général utilisé pour la programmation système (OS et embarqué), les bibliothèques, les jeux et les plateformes multiples. Cette balise doit être utilisée avec des questions générales concernant le langage C, tel que défini dans la norme ISO 9899 (la dernière version, 9899: 2018, sauf indication contraire - également balise les demandes spécifiques à la version avec c89, c99, c11, etc.). C est distinct de C ++ et il ne doit pas être combiné avec la balise C ++ en l'absence d'une raison rationnelle.


9
'\ 0' et printf () en C
Dans un cours d'introduction de C, j'ai appris que tout en stockant les chaînes sont stockées avec un caractère nul \0à la fin de celui-ci. Mais que se passe-t-il si je voulais imprimer une chaîne, disons printf("hello")bien que j'ai trouvé que cela ne se termine pas \0par la déclaration suivante …
21 c  printf  stdout  c-strings 



3
statique int arr [10] l'adresse mémoire se termine toujours par 060
J'ai un programme ca qui ressemble à ça principal c #include <stdio.h> #define SOME_VAR 10 static int heap[SOME_VAR]; int main(void) { printf("%p", heap); return 0; } et sort cela lorsque j'exécute le programme compilé plusieurs fois 0x58aa7c49060 0x56555644060 0x2f8d1f8e060 0x92f58280060 0x59551c53060 0xd474ed6e060 0x767c4561060 0xf515aeda060 0xbe62367e060 Pourquoi ça finit toujours en …
17 c  arrays  memory 

1
Pourquoi l'adresse de __libc_start_main est-elle toujours la même dans GDB même si ASLR est activé?
Breakpoint 1, 0x00007ffff7de8060 in __libc_start_main () from /usr/lib/libc.so.6 (gdb) r The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /home/firstlove/projects/org-ioslide/example/a.out Breakpoint 1, 0x00007ffff7de8060 in __libc_start_main () from /usr/lib/libc.so.6 (gdb) r The program being debugged has been started already. Start it …
16 c  linux  gdb  libc  aslr 


1
Pourquoi np.dot est-il imprécis? (tableaux n-dim)
Supposons que nous prenions np.dotdeux 'float32'tableaux 2D: res = np.dot(a, b) # see CASE 1 print(list(res[0])) # list shows more digits [-0.90448684, -1.1708503, 0.907136, 3.5594249, 1.1374011, -1.3826287] Nombres. Sauf, ils peuvent changer: CAS 1 : tranchea np.random.seed(1) a = np.random.randn(9, 6).astype('float32') b = np.random.randn(6, 6).astype('float32') for i in range(1, len(a)): …
15 python  c  arrays  numpy  precision 



5
Comparer un peu à un booléen
Disons que j'ai un ensemble de drapeaux, encodés dans un uint16_t flags. Par exemple AMAZING_FLAG = 0x02,. Maintenant, j'ai une fonction. Cette fonction doit vérifier si je veux changer le drapeau, car si je veux le faire, je dois écrire en flash. Et c'est cher. Par conséquent, je veux un …

1
Pourquoi le temps est-il rapporté par time () parfois 1 seconde derrière le composant secondes de timespec_get () en code C?
L'extrait de code suivant: struct timespec ts; for (int x = 0; x < 100000000; x++) { timespec_get(&ts, TIME_UTC); long cTime = (long) time(NULL); if (cTime != ts.tv_sec && ts.tv_nsec < 3000000) { printf("cTime: %ld\n", cTime); printf("ts.tv_sec: %ld\n", ts.tv_sec); printf("ts.tv_nsec: %ld\n", ts.tv_nsec); } } produit cette sortie: ... cTime: 1579268059 …
12 c  time  posix  timespec 


1
Pourquoi définir une macro pour une fonction du même nom?
J'ai trouvé le code ci-dessous dans https://github.com/torvalds/linux/blob/master/arch/x86/include/asm/atomic.h static __always_inline bool arch_atomic_sub_and_test(int i, atomic_t *v) { return GEN_BINARY_RMWcc(LOCK_PREFIX "subl", v->counter, e, "er", i); } #define arch_atomic_sub_and_test arch_atomic_sub_and_test qu'est-ce que ça fait #definevraiment? Quand est-il nécessaire de le faire?
12 c  linux-kernel 


En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.