strtok一个strtok分割字符串的问题

strtok  时间:2021-06-25  阅读:()

c语言 strtok请教

恩, 虽然没有看过strtok的实现 不过下面这个, 即时效果应该相同的(每执行一次函数的效果); 测试代码是直接复制msdn里的, 我只写mytoken (当然如果你原意给点分的话:p) #include char* MyToken( char *strToken, const char *strDelimit ); int main( void ) { char string[] = "A string of ,,tokens and some more tokens"; char seps[] = " , "; char *token; printf( "Tokens: " ); // Establish string and get the first token: token = MyToken( string, seps ); // C4996 // Note: strtok is deprecated; consider using strtok_s instead while( token != NULL ) { // While there are tokens in "string" printf( "%s ", token ); // Get next token: token = MyToken( NULL, seps ); // C4996 } } typedef int BOOL; #define TRUE 1 #define FALSE 0 BOOL InSide( char c, const char *str ) { while( 0 != *str ) if( c == *str ) return TRUE; else str++; return FALSE; } char* MyToken( char *strToken, const char *strDelimit ) { static char *strPoint = NULL; char *strRet; if( NULL != strToken ) strPoint = strToken; if( NULL == strPoint ) return NULL; while( 0 != *strPoint && InSide(*strPoint, strDelimit) ) *strPoint++ = 0; if( 0 == *strPoint ) return strPoint = NULL; strRet = strPoint; while( 0 != *strPoint && !InSide(*strPoint, strDelimit) ) strPoint++; if( 0 == *strPoint ) strPoint = NULL; else *strPoint++ = 0; return strRet; }

c的strtok用法,result = strtok( NULL, delims )理解不了啊

首次调用result = strtok( str, delims );时,内部有个static char *result指针指向了str 运行后result指向了now后的# 之后的循环 result = strtok( NULL, delims ); 可以看成if 参数==NULL 仍然使用上次的#位置(存在静态变量中)开始继续找,直到找到下一个分隔符#。

反复以NULL做参数,找到输出所有的#

一个strtok分割字符串的问题

strtok只能以字符来分割,不能以字符串分割,你应该使用strstr char* begin = data; char* end; while (end = strstr(begin, ".00")){ /* 对begin到end之间的字符串 做你想做的事 */ begin = end + 3; /* .00的长度*/ } /* 看看是否有最后一段 */ if (*begin) { }

新网,域名7月盛夏1核心2G内存.COM域名仅19.9元/首年,主机9.9元/月,企业邮箱0元体验

新网好不好?新网域名便宜吗?新网怎么样?新网是国内老牌知名域名注册商,企业正规化运营,资质齐全,与阿里云万网和腾讯云DNSPOD同为国内服务商巨头。近日新网发布了最新的七月放价季优惠活动,主要针对域名、云主机、企业邮箱、SSL证书等多款云产品推送了超值的优惠,其中.com顶级域名仅19.9元/首年,.cn域名仅16元/首年,云主机1核心2G内存3Mbps带宽仅9.9元/月,企业邮箱更是免费送1年,...

云基Yunbase无视CC攻击(最高500G DDoS防御),美国洛杉矶CN2-GIA高防独立服务器,

云基yunbase怎么样?云基成立于2020年,目前主要提供高防海内外独立服务器,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)。目前,美国洛杉矶CN2-GIA高防独立服务器,8核16G,最高500G ...

JustHost:俄罗斯/新西伯利亚vps,512MB内存/5GB空间/不限流量/200Mbps/KVM/自由更换IP,$1.57/月

justhost怎么样?justhost是一家俄罗斯主机商,2006年成立,提供各种主机服务,vps基于kvm,有HDD和SSD硬盘两种,特色是200Mbps不限流量(之前是100Mbps,现在升级为200Mbps)。下面是HDD硬盘的KVM VPS,性价比最高,此外还有SSD硬盘的KVM VPS,价格略高。支持Paypal付款。国内建议选择新西伯利亚或者莫斯科DataLine。支持Paypal付...

strtok为你推荐
短信营销方案短信平台应该如何推广和运营啊?5e5e5e如何更改bootstrap navbar的颜色 03 Topics 03 Ruby China微信如何只发文字微信朋友圈怎样只发文字comexception5种常见的Exception!云办公平台什么叫云办公啊?谁能通俗的给我讲下怎么查微信注册时间微信号用了多久,怎么知道微盟价格微盟怎么收费?网页背景音乐代码有没有网页背景音乐播放器代码??driversbackup电脑里有个“Backup”文件夹是干什么的ps5教程跪求PS5 教程
如何注销域名备案 174.127.195.202 中国智能物流骨干网 idc资讯 asp免费空间申请 双11秒杀 福建铁通 服务器监测 四核服务器 流媒体加速 无限流量 架设邮件服务器 沈阳主机托管 tracker服务器 ipower windowsserverr2 e-mail 服务器是什么 低价 免费服务器 更多