J’ai besoin d’écrire une petite fonction en langage C, où j’ai une chaîne de style Pascal et une autre chaîne, une chaîne de style C. Dans cette fonction, je devrais comparer ces deux chaînes et si les deux sont identiques, la fonction doit renvoyer true, sinon renvoyer false. int main() { char pascal_ssortingng // here […]
Existe-t-il un exemple fonctionnel de l’algorithme de recherche de chaînes de Boyer-Moore en C? J’ai regardé quelques sites, mais ils semblent assez buggés, y compris wikipedia. Merci.
Dupliquer possible: Quelle est la difference entre char s [] et char * s en C? Quelle est la différence entre ceci: char arr[] = “Hello, world!”; Et ça: char *arr = “Hello, world!”; Où sont allouées la mémoire des deux chaînes? Pourquoi ne puis-je pas modifier le contenu de cette dernière chaîne?
Un commentaire sur l’une de mes réponses m’a laissé un peu perplexe. Lors de la tentative de calcul de la quantité de mémoire nécessaire pour concaténer deux chaînes dans un nouveau bloc de mémoire, il a été déclaré que l’utilisation de snprintf était préférable à strlen , comme indiqué ci-dessous: size_t length = snprintf(0, 0, […]
Par exemple, pour valider l’URL valide, j’aimerais procéder comme suit char usUrl[MAX] = “http://www.stackoverflow” if(usUrl[0] == ‘h’ && usUrl[1] == ‘t’ && usUrl[2] == ‘t’ && usUrl[3] == ‘p’ && usUrl[4] == ‘:’ && usUrl[5] == ‘/’ && usUrl[6] == ‘/’) { // what should be in this something? printf(“The Url starts with http:// \n”); […]
Je dois construire un chemin vers un fichier à partir de deux chaînes. Je pourrais utiliser ceci (non testé, cependant): /* DON’T USE THIS CODE! */ /* cmp means component */ char *path_cmp1 = “/Users/john/”; char *path_cmp2 = “foo/bar.txt”; unsigned len = strlen(path_cmp1); char *path = path_cmp1; for (int i = 0; i < strlen(path_cmp2); […]
J’ai une fonctionnalité de rapport d’erreur dans ma petite bibliothèque C que j’écris. Je souhaite fournir une fonction errorf en plus de la fonction plain plain afin de permettre l’intégration facile d’informations dans les messages d’erreur. /* * Prints a formatted error message. Use it as you would use ‘printf’. See the * ‘sio_error’ function. […]
Je cherche à supprimer toute la ponctuation d’une chaîne et à mettre toutes les lettres majuscules en minuscule en C, des suggestions?
J’ai une fonction de chaîne qui accepte un pointeur sur une chaîne source et renvoie un pointeur sur une chaîne de destination. Cette fonction fonctionne actuellement, mais je crains de ne pas suivre la meilleure pratique consistant à classer malloc, realloc et free. Ce qui diffère de ma fonction, c’est que la longueur de la […]
char *a = “apple”; printf(“%s\n”, a); // fine printf(“%s\n”, a[1]); // comstackr complains an int is being passed Pourquoi l’indexation d’un pointeur de chaîne me donne-t-elle un int? Je m’attendais à ce qu’il imprime simplement la chaîne à partir de la position un (ce qui se produit réellement lorsque j’utilise &a[1] place). pourquoi ai-je besoin […]