有字符串str1="下午 11:22:22";我想取出前面两个字符“下午”进行判断,如果是“下午”,就将11加上12,使得str1=“23:22:22”,如果是上午,str1=“11:22:22“怎么样实现阿?大侠帮忙阿!

解决方案 »

  1.   

    CString str1="下午 11:22:22";
    char *szString;
    szString = str1.GetBuffer(str1.GetLength());
    szString[4]='\0';
    if(strcmp(szString,"下午")==0)
        MessageBox("下午");
    else
        MessageBox("上午");
      

  2.   

    修改:
    CString str1="ÏÂÎç 11£º22£º22",str2;
    str2=str1;
    char *szString;
    szString = str2.GetBuffer(str2.GetLength());
    szString[4]='\0';
    if(strcmp(szString,"下午")==0)
       MessageBox("下午");
    else
      MessageBox("上午");
      

  3.   

    // 上面乱码
    CString str1=="下午 11:22:22",str2;
    str2=str1;
    char *szString;
    szString = str2.GetBuffer(str2.GetLength());
    szString[4]='\0';
    if(strcmp(szString,"下午")==0)
       MessageBox("下午");
    else
      MessageBox("上午");
      

  4.   

    if("上午" == str1.Left(4))
    {
    ...
    }else ("下午" == str1.Left(4)){
    ...
    }
    else{
    ...
    }
      

  5.   

    #include<iostream.h>
    #include<string.h>
    char st[]="012345678901";
    void main()
    {
    char str[16];
    strcpy(str,"下午 11:22:22");
    if(strncmp(str,"下",2)==0)
    {
    if(str[5]=='0') str[5]='1';
    else str[5]='2';
    for(int i=0;i<10;i++)
    if(str[6]==st[i])
    {
    str[6]=st[i+2];break;
    }
    }
    strcpy(str,str+5);
    cout<<str<<endl;
    }