本帖最后由 sinian126 于 2012-09-18 14:41 编辑
用这样的程序实现依次输出文件中各行元素个数
#!/usr/bin/perl
open IN1,"
本帖最后由 perlma 于 2010-03-14 19:53 编辑 char name[4]; strcpy(name, "1234567"); int i = strlen(name); 给name分配了4个char的长度,为什么允许赋值为7个char呢?
最近细读《Programming in C》,里面讲数组时讲到了“变量长度数组”,说有的编译器支持这样的用法:
int i=10;
char buf[ i ];
于是我测试发现VC6是不支持这个的,但是GCC支持!我写了这样的测试代码:
发现程序居然也支持i是负数,而且在负数的情况下,GCC的内存分配虽然怪异,但也是保证正确的。
[code]
#include
int length(int arr[]) { return sizeof(arr)/sizeof(arr[0]); } 我想一个函数返回数组的大小,该如何做,我上面的程序有问题,一直传的是地址
代码如下:
#include
[nobody@SDCTC-nogroup-61 logs]$ awk 'BEGIN{for(i=1;i<10;i++) a++;}END{print length(a);}' a awk: cmd. line:1: (FILENAME=a FNR=6) fatal: attempt to use array `a' in a scalar context length(a) 报错,而length('aaa');结果正确。 问一下,awk的数组长度如何计算?
public class Attributes { private byte type; private byte length; private byte[] value; //不定长 /************************************************/ public Attributes(int typ,String value){ this.type=(byte)typ; this.length=(byte)this.getlength; this.value=value.getBytes(); } /**************************************************/ int getlength(){ re...
#include