//
// 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;
}
運行結果