#include <stdio.h>
#include <string.h>
#include <ctype.h>
void remove_punctuation_from_string(char* p) {
char* src = p, * dest = p;
while (*src) {
if (ispunct((unsigned char)*src)) {
src++; // Skip punctuation character
}
else if (src == dest) {
src++;
dest++;
}
else {
*dest++ = *src++; // copy not punctuation character
}
}
*dest = 0;
}
int main()
{
char str[] = "C@ C++, Java: (Python) C#$ Go! <Rust>";
printf("len = %zu\n", strlen(str));
remove_punctuation_from_string(str);
printf("str = %s\n", str);
printf("len = %zu\n", strlen(str));
return 0;
}
/*
run:
len = 37
str = C C Java Python C Go Rust
len = 25
*/