// // main.c // c_test2 // // Created by vincent_guo on 13-3-26. // Copyright (c) 2013年 vincent_guo. All rights reserved. // #include <stdio.h> #include <string.h> //写一个函数,将一维数组中的元素逆序存放(用指针做这题) //逆序存放第一种写法 void reverseChar(char strs[]){ //strlen()方法在string.h的头文件中,所以这里要include <string.h> size_t count = strlen(strs); //定义一个指针指向strs的内存地址 char *p = strs; char tmp; for (int i = 0; i < count/2 ; i++) { tmp = *(p+i); *(p+i) = *(p + count - 1 - i); *(p + count - 1 - i) = tmp; } } //逆序存放第一种写法 void reverseChar2(char strs[]){ size_t count = strlen(strs); int left = 0; int right = count-1; char *p = strs; while (left < right) { char tmp = *(p + left); *(p + left) = *(p + right); *(p + right) = tmp; left ++; right --; } } int main(int argc, const char * argv[]) { //C语言是没有String类型的 它用char的数组来表示字符串 char strs[] = "ios_php_java"; printf("倒序前的字符串为:%s\n",strs); reverseChar(strs); printf("倒序后的字符串为:%s\n",strs); reverseChar2(strs); printf("再次倒序后的字符串为:%s\n",strs); printf("------------------------------\n"); printf("本机是64位,int基本类型占用的字节数为:%d\n",sizeof(int)); printf("本机是64位,char基本类型占用的字节数为:%d\n",sizeof(char)); printf("本机是64位,long基本类型占用的字节数为:%d\n",sizeof(long)); printf("本机是64位,float基本类型占用的字节数为:%d\n",sizeof(float)); return 0; }
运行结果