strの中身の文字列で、スペース10個目より後ろの値を得たいので
(下記プログラムだと「ab0523092616p」の部分)、以下のプログラムを
書いてみましたが、states_mesに上手く格納できません。

どうもstrcatの2番目の引数がよろしくないみたいですが・・・
perlの経験は有りますが、変数の型に甘い言語に慣れてしまっていまして
対処方法がいまいちわかりません。
最終的にstates_mes内に「ab0523092616p」を格納出来るようにするには
どうしたらよろしいでしょうか?


#include <stdio.h>
#include <string.h>
#include <stdlib.h>

#define MAX_LENGTH 1024

main(){
 char str[MAX_LENGTH] = "d k 1022174 10311 102590 759 uuune rejp 27354 1010 ab0523092616p";

 int i;
 int spc_check = 0;
 char states_mes[MAX_LENGTH];

 for(i=0;i<MAX_LENGTH;i++){
  if(spc_check==10){
   if(str[i]==NULL){
    break;
   }else{
    strcat(states_mes , str[i]);
   }
  }else{
   if(str[i]==' '){
    spc_check++;
   }
  }
 }

 printf("%s\n",states_mes);
}