To paste source code, we use the table block in this site hatena.
They can not allow us to paste enough lines of source code, so we use twice paste in table block.
And font-size we can change, is very helpful for us, thank you very much of hatena.
The reason why the function doesn't work well, the one line is skipped and shown bold like the below.
1 | m_replace: qualified: 3/15 | ||
2 | array_counter.cpp | ||
3 | > .\winmain_001.exe a_001 |aaa<><></>_001_bbb ccc| i|0| c1|97|=|a| a_c=0 a_f=5 c2|95||_| i|1| c1|97|=|a| a_c=0 a_f=5 c2|95||_| i|2| c1|97|=|a| a_c=0 a_f=5 c2|95||_| i|3| c1|60|=|<| a_c=0 a_f=5 c2|95||_| i|4| c1|62|=|>| a_c=0 a_f=5 c2|95||_| i|5| c1|60|=|<| a_c=0 a_f=5 c2|95||_| i|6| c1|62|=|>| a_c=0 a_f=5 c2|95||_| i|7| c1|60|=|<| a_c=0 a_f=5 c2|95||_| i|8| c1|47|=|/| a_c=0 a_f=5 c2|95||_| i|9| c1|62|=|>| a_c=0 a_f=5 c2|95||_| i|10| c1|95|=|_| a_c=5 a_f=5 c2|95||_| i|15| c1|98|=|b| a_c=0 a_f=5 c2|95||_| i|16| c1|98|=|b| a_c=0 a_f=5 c2|95||_| i|17| c1|98|=|b| a_c=0 a_f=5 c2|95||_| | a_c=0 a_f=5 c2|95||_| i|19| c1|10|=| | a_c=0 a_f=5 c2|95||_| i|20| c1|99|=|c| a_c=0 a_f=5 c2|95||_| i|21| c1|99|=|c| a_c=0 a_f=5 c2|95||_| i|22| c1|99|=|c| a_c=0 a_f=5 c2|95||_| a_001 |aaa<><></>ddbbb ccc| |
||
4 |
.\array_counter.cpp Mon Mar 15 20:51:28 2021 ... 123 :// 124 :char* m_replace ( char* char_string, 125 : char* from_string, char* to_string ) { 126 : char c1, c2; 127 : int count = array_count( char_string ); 128 : int a_f = array_count( from_string ); 129 : int a_t = array_count( to_string ); 130 : int a_c = 0; 131 : char* char_string_2 = 132 : (char *) malloc ( sizeof (char)*( count + a_t - 1 ) ); 133 : 134 : int cnt_replace = 0; 135 : for ( int i = 0; i<count; i++ ) { 136 : c1 = *( char_string + i ) ; 137 : a_c = 0; 138 : for ( int j=0; ja_f && j <count; j++ ) { |
||
5 |
139 : c1 = *( char_string + i + j ) ; 140 : c2 = *( from_string + j ) ; 141 : if ( c1 != c2 ) break; 142 : a_c++; 143 : } 144 : 145 : printf("i|%d| c1|%d|=|%c| a_c=%d a_f=%d c2|%d||%c|\r\n", i, c1, c1, a_c, a_f, c2, c2 ); 146 : if ( a_c == a_f && cnt_replace == 0) { 147 : // match 148 : int to = i + a_t; 149 : for( int k=0; k<a_t; k++ ) { 150 : *( char_string_2 + i + k + cnt_replace*(a_t- a_f ) ) = 151 : *( to_string + k ); 152 : } 153 : i += a_f - 1 ; 154 : cnt_replace++; 155 : } else { 156 : *( char_string_2 + i + cnt_replace*(a_t- a_f ) ) = c1; 157 : } 158 : } 159 : *( char_string_2 + count + cnt_replace*( a_t - a_f ) ) = '\0'; 160 : put_memories ( char_string_2 ); 161 : 162 : return char_string_2; 163 :} |
||
*