c99 学习笔记

/ =====================================================================================
// 
//       Filename:  char.c
// 
//    Description:  char size test
// 
//        Version:  1.0
//        Created:  2013年03月17日 17时01分13秒
//       Revision:  none
//       Compiler:  g++
// 
//         Author:  Li Weijian (), lwj1396@163.com
//        Company:  
// 
// =====================================================================================
#include<stdio.h>
#include<wchar.h>
#include<locale.h>
	
//c语言闭包
typedef void(*func_t)();
func_t test()
{
	void func1()
	{
		printf("%s\n", __func__);
	};
	return func1;
}

int main(){
	//字符常量默认是一个 int 整数,但编译器可以自行决定将其解释为 char 或 int
	char c = 'a';
	printf("%c, size(char)=%d, size('a')=%d;\n", c, sizeof(c), sizeof('a'));
	printf("%d\n", sizeof(char*));

	//中文字符处理
	setlocale(LC_CTYPE, "en_US.UTF-8");
	wchar_t ws[] = L"中国人";
	printf("%ls\n",ws);
	printf("%ls  len %d, size %d\n",ws, wcslen(ws), sizeof(ws));
	unsigned char* b = (unsigned char*)ws;
	int len = sizeof(ws);
	for (int i = 0; i < len; i++)
	{
		printf("%02X ", b[i]);
	}
	printf("\n");


	//c语言闭包
	func_t t = test();
	t();


    //参数从右往左入栈
	int fa()
	{
		printf("a\n");
		return 'a';
	}

	int fb()
	{
		printf("b\n");
		return 'b';
	}
	printf("%d , %d\n",fa(),fb());

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值