//================================================================ // Nome Do Arquivo: string_substring.c // File Name: string_substring.c // // Descrição: O programa retorna uma string a partir de um dado // intervalo: [start, end[ //================================================================ // Libs #include <stdio.h> #include <stdlib.h> #include <string.h> // Protótipo da função char* string_substring(char str[], int start, int end); // Função main // Main Function int main(int argc, char** argv) { char str[100], *sub; int start, end; // Lê a string printf("Digite a string: "); gets(str); printf("Digite a posição inicial: "); scanf("%d", &start); printf("Digite a posição final: "); scanf("%d", &end); // Retorna a substring sub = string_substring(str, start, end); // Imprime a substring printf("A substring: %sn", sub); system("pause"); return 0; } char* string_substring(char str[], int start, int end) { int i, j; char *sub; // Verifica valores incompatíveis e // retorna NULL if(start >= end || end > strlen(str)) { return NULL; } // Aloca memória para a substring sub = (char *) malloc(sizeof(char) * (end - start + 1)); // Copia a substring para a variável for(i = start, j = 0; i < end; i++, j++) { sub[j] = str[i]; } // Terminador de string sub[j] = '\0'; return sub; }
Substring – C
Deixe um comentário