????可以多次输入字符串进行调试
while(gets(str)>0)
创建指针数组(注意是指针数组而不是数组指针),去存放每个单词的首地址。有些伙伴会问为什么要用指针数组呢?为啥不直接创建指针去存放地址呢?首先,我不知道创建多少个指针才合适,其次,创建这么多指针,怎么去给他们赋值,怎么去命名。这些都是一些不可忽视问题,但是指针数组可以有效去解决这些问题。
char* word[10000]={NULL};
????如果是字母字符,则是单词的起始字符
if(('z'>=*ptr&&*ptr>='a')||('Z'>=*ptr&&*ptr>='A'))
????保存每个单词的起始地址
word[row++]=ptr;
????把本次的单词字母字符走完,直到遇到非字符字母
while(*ptr!='\0'&&(('z'>=*ptr&&*ptr>='a')||('Z'>=*ptr&&*ptr>='A')))
????不能继续向下,因为下边的ptr++会跳过当前非字母字符
continue;
????把非字母字符替换为字符串的结尾标志
*ptr='\0';
????针对所有单词的起始地址逆序输出
printf("%s",word[i]);