阅读背景:

两个判断条件又先后顺序怎么办?

来源:互联网 
最近遇到这么个问题,比如说有个字符串"a.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

b.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

c.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

"两个文件名之间是以
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

分隔,最后有两个
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

'成立的情况下再判断 最近遇到这么个问题,比如说有个字符串"a.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

b.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

c.mp3
最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

最近遇到这么个问题,比如说有个字符串"a.mp3\0b.mp3\0c.mp3\0\0"两个文件名之间是以\0分隔,最后有两个\0,我想写一条语句判断是否结束,假设有一个指针p指向该字符串,那么我想在while循环里这样,即*p!='\0'成立的情况下再判断
*p++!='\0',不知道该怎么写。(也就是说有先后关系)

10 个解决方案

#1


你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}

#2


那就用个指针

#3


那就用两个指针

引用 2 楼 liuwg9999 的回复:
那就用个指针

#4


可以用这个判断结尾
while(*p!='\0'&&*(p++)!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束
{...}
如果两个都是match , 就结束了

#5


引用 1 楼 xingzhe2001 的回复:
你要的是这个
C/C++ codewhile(*p!='\0'&&*p++!='\0')
{...}

我觉得这样不行,假设p指向了a.mp3的3的位置,那么p++也就指向了0,那么循环结束,并没有达到遍历整个字符串的目的。

#6


要不这样
两个指针
while(*p1!='\0'&&*p2!='\0') //不知道这样加个括号会不会更好一点, 如果都为真表示没有结束 
{...

p1++;
p2++;


如果两个都是match , 就结束了

#7


while(p[0]||p[1]){
p++;
}

#8


“a.mp3\0b.mp3\0c.mp3\0\0”
这不是多个字符串了吗?
怎么存的啊?

#9


while(!(*p1=='\0'&&*p2=='\0'))
while(*p1!='\0'||*p2!='\0'))

#10


引用 1 楼 xingzhe2001 的回复:
你要的是这个
while(*p!='\0'&&*p++!='\0')
{...}


草率了,后面的p++可能不被执行

while(*p!='\0'||*(p+1)!='\0')

"两个文件



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: