/****************************************************************** * linux C 数组操作 * 声明: * 本文为解决陈颖奇遇到的C数组操作上的问题,主要是验证。 * * 2016-2-2 深圳 南山平山村 曾剑锋 *****************************************************************/ #include <stdio.h> #define ARRAY_LENGTH 10 #define printd(argv) printf(" %d,", argv) #define printdl(argv) printf(" %d\n", argv) void print_array(int *array, int length) { int i = 0; for ( i = 0; i < length - 1; i++ ) { printd(array[i]); } printdl(array[i]); } int main( int argc, char **argv ) { int array[ARRAY_LENGTH] = {1, 2, 3, 4, 5, 0}; print_array(array, ARRAY_LENGTH); int i = 0; for ( ; i < ARRAY_LENGTH/2; i++ ) { array[i+ARRAY_LENGTH/2] = array[i]; } print_array(array, ARRAY_LENGTH); } /* * 输出结果: * Qt@aplex:~/cmdTest/test$ ./a.out * 1, 2, 3, 4, 5, 0, 0, 0, 0, 0 * 1, 2, 3, 4, 5, 1, 2, 3, 4, 5 */