8.
ポインタ:用例
ポインタ:用例
10個の数値を入力して、表示するプログラムです。
#include <stdio.h>
main( )
{
int values[10];
int i;
for( i = 0 ; i < 10 ; i++ )
scanf( "%d", values + i );
for( i = 0 ; i < 10 ; i++ )
printf( "%d, ", *( values + i ) );
}
- values + i は、&values[i] と同じ意味を持ちます。
- *( values + i ) は、values[i] と同じ意味を持ちます。
入力された文字列を3回繰り返した文字列を作成し表示するプログラムです。
#include <stdio.h>
main( )
{
char pattern[200];
char str[200];
int i;
char* pdst = str;
char* psrc;
scanf( "%s", pattern );
for( i = 0 ; i < 3 ; i++ ){
psrc = pattern;
while( *psrc )
*pdst++ = *psrc++;
}
*pdst = 0;
printf( "%s\n", str );
}
- *pdst++ = *psrc++;では、pdst、psrcの値が使用されてからインクリメントが行われます。