//
// main.c
// c_test2
//
// Created by vincent_guo on 13-3-26.
// Copyright (c) 2013年 vincent_guo. All rights reserved.
//
#include
#include
//写一个函数,将一维数组中的元素逆序存放(用指针做这题)
//逆序存放第一种写法
void reverseChar(char strs[]){
//strlen()方法在string.h的头文件中,所以这里要include
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;
}
运行结果