c语言dnl
A. c语言中,int是什么意思
C/C++编程语言中,int表示整型变量,是一种数据类型,用于定义一个整型变量,在不同编译环境有不同的大小,不同编译运行环境大小不同。
在32/64位系统中都是32位,范围为-2147483648~+2147483647,无符号情况下表示为0~4294967295。
(1)c语言dnl扩展阅读
matlab中
int用于符号∫
int(s)符号表达式s的不定积分.
int(s,v)符号表达式s关于变量v的不定积分.
int(s,a,b)符号表达式s的定积分, a,b分别为积分的下限和上限.
int(s,v,a,b)符号表达式s关于变量v从 a到b的定积分.
当int求不出符号解,会自动转求数值解。
B. 如何用c语言在windows平台上开发php extension
如何使用C语言开发PHP扩展。
函数功能:php里面的整数是有符号数,其内部实现其实就是long,不是unsigned long。对于32位机器来说,php最大能表示的整数就是2^31-1了,一般在应用中碰到大于2^31-1而小于2^32的数就只能用字符串来表示了。对于mixed int_ext(string in)来说,如果字符串in表示的整数小于2^31-1,那么就返回整数,如果大于就返回字符串。
开发扩展步骤如下:(首先需要下载php的源码,这里下载的是php-5.3.14)
1,建立扩展骨架
[plain] view plainprint?
01.cd php-5.3.14/ext
02../ext_skel --extname=int_ext
cd php-5.3.14/ext
./ext_skel --extname=int_ext
2,修改编译参数
[plain] view plainprint?
01.cd php-5.3.14/ext/int_ext
02.vi config.m4
cd php-5.3.14/ext/int_ext
vi config.m4去掉 PHP_ARG_ENABLE(int_ext, whether to enable int_ext support 和
[ --enable-int_ext Enable int_ext support]) 两行前面的dnl 修改后为:
[plain] view plainprint?
01.1. dnl Otherwise use enable:
02.2. PHP_ARG_ENABLE(int_ext, whether to enable int_ext support,
03.3. dnl Make sure that the comment is aligned:
04.4. [ --enable-int_ext Enable int_ext support])
1. dnl Otherwise use enable:
2. PHP_ARG_ENABLE(int_ext, whether to enable int_ext support,
3. dnl Make sure that the comment is aligned:
4. [ --enable-int_ext Enable int_ext support])
3,编写C代码
[plain] view plainprint?
01.cd php-5.3.14/ext/int_ext
02.vi php_int_ext.h
03.#在 PHP_FUNCTION(confirm_int_ext_compiled); 后面新增一行 PHP_FUNCTION(int_ext);
cd php-5.3.14/ext/int_ext
vi php_int_ext.h
#在 PHP_FUNCTION(confirm_int_ext_compiled); 后面新增一行 PHP_FUNCTION(int_ext);[plain] view plainprint?
01.cd php-5.3.14/ext/int_ext
02.vi int_ext.c
03.#在PHP_FE(confirm_int_ext_compiled, NULL) 后面添加 PHP_FE(int_ext, NULL)添加后为:
04.1. zend_function_entry int_ext_functions[] = {
05.2. PHP_FE(confirm_int_ext_compiled, NULL) /* For testing, remove later. */
06.3. PHP_FE(int_ext, NULL) /* For testing, remove later. */
07.4. {NULL, NULL, NULL} /* Must be the last line in int_ext_functions[] */
08.5. };
cd php-5.3.14/ext/int_ext
vi int_ext.c
#在PHP_FE(confirm_int_ext_compiled, NULL) 后面添加 PHP_FE(int_ext, NULL)添加后为:
1. zend_function_entry int_ext_functions[] = {
2. PHP_FE(confirm_int_ext_compiled, NULL) /* For testing, remove later. */
3. PHP_FE(int_ext, NULL) /* For testing, remove later. */
4. {NULL, NULL, NULL} /* Must be the last line in int_ext_functions[] */
5. };
核心代码:
[plain] view plainprint?
01.PHP_FUNCTION(int_ext)
02.{
03. char * str = NULL;
04. int str_len;
05. int argc = ZEND_NUM_ARGS();
06. if(zend_parse_parameters(argc TSRMLS_CC,"s",&str,&str_len) == FAILURE)
07. return ;
08. char * result;
09. int result_length = str_len;
10. result = (char *) emalloc(result_length + 1);
11. memcpy(result,str,result_length);
12. unsigned long result_num = strtoul(result, NULL, 10);
13. int sizeoflong sizeof(long);
14. unsigned long max_long = 1 << (sizeoflong * 8 -1);
15. if(result_num < max_long)
16. {
17. RETURN_LONG(result_num);
18. }
19. else
20. {
21. RESULT_STRINGL(result, result_length, 0);
22. }
23.}
PHP_FUNCTION(int_ext)
{
char * str = NULL;
int str_len;
int argc = ZEND_NUM_ARGS();
if(zend_parse_parameters(argc TSRMLS_CC,"s",&str,&str_len) == FAILURE)
return ;
char * result;
int result_length = str_len;
result = (char *) emalloc(result_length + 1);
memcpy(result,str,result_length);
unsigned long result_num = strtoul(result, NULL, 10);
int sizeoflong sizeof(long);
unsigned long max_long = 1 << (sizeoflong * 8 -1);
if(result_num < max_long)
{
RETURN_LONG(result_num);
}
else
{
RESULT_STRINGL(result, result_length, 0);
}
}
4,编译
[plain] view plainprint?
01.cd php-5.3.14/ext/int_ext
02./usr/local/php/bin/pphpize
03../configure --with-php-config=/usr/local/php/bin/php-config
04.make
05.make install
cd php-5.3.14/ext/int_ext
/usr/local/php/bin/pphpize
./configure --with-php-config=/usr/local/php/bin/php-config
make
make install
此时会产生一个so文件: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/int_ext.so
修改php.ini 添加扩展extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
[int_ext]
extension = int_ext.so
5,测试
[plain] view plainprint?
01.$a = int_ext("12345678900");
02.var_mp($a);
03.$a = int_ext("123456789");
04.var_mp($a);
$a = int_ext("12345678900");
var_mp($a);
$a = int_ext("123456789");
var_mp($a);
结果输出:
[plain] view plainprint?
01.string(11) "12345678900"
02.int(123456789)
C. itouch4 序列号 C3WDNL6LDCP9,谁能帮我查一下激活时间,谢谢!
激活时间“最近一次”:2012-02-01
产品型号 itouch4
产品序列号(SN) C3WDNL6LDCP9
销售地 中国香港特区
购买时间 2012-02-01
过保时间 2013-01-31
激活状态 已激活
D. sos c语言程序设计中的预处理中的头文件的问题
1.什么是源文件
在C语言中以.c结尾的文件为源文件,以.h结尾的也可以说是源文件,但习惯上称其为头文件
2.如何将两个文件一起做编译
放到一个文件夹下即可。
3.VC6。0中的操作
在记事本中写完两个文件,一个保存为.c一个保存为.h,注意,要在一个文件夹下;然后把.c文件用鼠标拖到VC图标上即可。若弹出对话框,先YES即可。
E. C语言不太可以FEFINDDD一定选择
这里宏定义的写法有错误。
首先 应该是#define D "%d" 否则就有两个D1了
后续的 D1到D4的define
每个D和其它之间需要有空格
即
#define D1 D NL
#define D2 DD NL
#define D3 D DDNL
#define D4 D DDDNL
否则,DNL作为一个整体 就会出错了。
这样 下面的五个PR依次带入即可。
PR(D1,a)
= printf(D NL, a)
= printf("%d" " ", a)
= printf("%d ",a)
这里用到一个知识点是 相邻的字符串,如果没有显式的标点分隔,仅用空格 tab或者换行分隔的话,按一个字符串处理。
类似的
PR(D2,a,b)
= printf(D DNL, a,b)
= printf("%d" "%d"" ", a,b)
= printf("%d%d ",a,b)
PR(D3,a,b,c)
= printf(DDDNL, a,b,c)
= printf("%d""%d""%d"" ", a,b,c)
= printf("%d%d%d ",a,b,c)
PR(D4,a,b,c,d)
= printf(DDDDNL, a,b,c,d)
= printf("%d""%d""%d""%d"" ", a,b,c,d)
= printf("%d%d%d%d ",a,b,c,d)
PR(S,string)
=printf("%s",string);
于是原本的程序,带入宏之后就是
main()
{
inta,b,c,d;
charstring[]="CHINA";
a=1;b=2;c=3;d=4;
printf("%d ",a);
printf("%d%d ",a,b);
printf("%d%d%d ",a,b,c);
printf("%d%d%d%d ",a,b,c,d);
printf("%s",string);
}
这样判断输出就很简单了。
1
12
123
1234
CHINA
F. 解决c语言题
D.原语句错误
DNL会被作为一个变量使用,所以编译时会提示DNL未定义。
改为#define D1 D NL,就可以了,这时候编译后应为B.printf("%d""\n",a);
G. matlab中怎样实现多层小波重构
T=wpdec(y,5,'db40');
%对信号y进行小波包分解,层数为5,得到的T为小波树,plot一下就可看到
a10=wprcoef(T,[1,0]);
%a10是对节点[1,0]进行重构后得到的信号。貌似没有对那一层重构这一说法吧,只能是对某层的某个节点进行重构。节点的编号你可以从小波树中看出来
这是我的做法,不过用的是小波包分解。不知对你有没有用
H. OKI C833dnl打有很多一点一点的
硒鼓组件有问题。
无规则黑点:硒鼓组件或粉仓组件有问题,非专业人士自己维修的可能不大,最好找个维修工,或者更换硒鼓或粉仓。