lisp如何读取指定文件内容并赋值变量?

79 2024-12-17 15:04

一、lisp如何读取指定文件内容并赋值变量?

;;文件读取样例(defunc:loadd()(vl-load-com);以读的方式打开文件"c:/lj.txt"lj.txt的内容“h:”(setqwjm"c:/lj.txt")(if(findfilewjm);如果文件存在,就打开文件并读出第一行内容之后关闭(progn;读取文件中的一行,将读出来的值赋予panfu(setqfff(openwjm"r")panfu(read-linefff));关闭文件(closefff)(if(/=panfunil)(progn;将变量panfu的内容与/cx/H7.dvb连接成一个字符串(setqzfc(strcatpanfu"/cx/H7.dvb"))

;加载VBA工程h:/cx/H7.dvb(command"_vbaload"zfc))));如果文件不存在就退出(vl-exit-with-error(alert"c:/lj.txt不存在,程序将结束!")))(princ))

二、字符串应该怎么赋值?

{ char s[100]; strcpy(s, "The writer would like to thank you for" "your interest in his book. He hopes you" "can get some helps from the book."); }2、对数组中字符逐个赋值字符串可以赋值给字符指针变量,或者将字符串用字符数组保存。

如:char a[10]={'h','e','l','l','o'}

;3、利用strcpystrcpy是一种C语言的标准库函数,strcpy把含有'\0'结束符的字符串复制到另一个地址空间,返回值的类型为char*。

如:char a[10];strcpy(a, "hello")

;2、在指针自增的时候,编译器会自动识别类型,比如指针是指向int型的,想获取下一个的地址时,指针直接p++就行了,不要多此一举的p+4了。

3、在void指针使用的时候,不能使用指针运算,因为void型编译器不能识别类型的长度(即指针所指对象的体积),p++这样就是不合法的,即不能进行数学运算,也不能使用*取值操作,想使用必须转换为其它的类型。

三、怎么给字符串数组赋值?

给字符数组赋值分两种情况,单字符赋值和字符串赋值。

单字符赋值,可通过数组下标方式或指针方式,引用数组元素,进行赋值,如:

char a[10];char ch='a';for( i=0;i<10;i++ ) a[i]=ch+i ; //可通过数组下标引用数组元素,完成赋值char *p;for( p=a; p<a+10; p++ ) *p=ch++; //通过指针对数组相应元素赋值

字符串赋值,可使用string.h头文件中的字符串操作函数进行赋值,如:

char a[10];strcpy( a, "abcdefgh");sprintf(a, "%s", "abcdefgh");

注意:数组在定义时,可以同时进行初始化,但定义完成后,就不能按初始化的形式对其赋值了,如:

char a[10]="abcdefgh"; //这样可以a="abcdefgh"; //这样是错误的!a是数组名,是一个静态数据:数组首地址值,可以看作是个常数,不能再被改变。

四、给字符串赋值的方法?

字符串赋值有一定要求,例如C语言的运算符根本无法操作字符串。在C语言中把字符串当作数组来处理,因此,对字符串的限制方式和对数组的一样,特别是,它们都不能用C语言的运算符进行复制和比较操作。

使用strcpy函数,strcpy(str1,str2),字符数组1必须定义的足够大,以便容纳被复制的字符串2,避免数组越界。

五、C语言字符串赋值操作?

字符串赋值的方法:

1、定义的时候直接用字符串赋值

如:char a[10]="hello";

注意:不能先定义再给它赋值,如char a[10]; a[10]="hello";这样是错误的。

例如:

main()

{ char s[100];

strcpy(s, "The writer would like to thank you for"

"your interest in his book. He hopes you"

"can get some helps from the book."); }

2、对数组中字符逐个赋值

字符串可以赋值给字符指针变量,或者将字符串用字符数组保存。

如:char a[10]={'h','e','l','l','o'};

3、利用strcpy

strcpy是一种C语言的标准库函数,strcpy把含有'\0'结束符的字符串复制到另一个地址空间,返回值的类型为char*。

如:char a[10];

strcpy(a, "hello");

扩展资料

字符串赋值的注意事项:

1、在使用指针的时候,指针可以自增,而数组名不能自增编译器给数组分配了空间。

2、在指针自增的时候,编译器会自动识别类型,比如指针是指向int型的,想获取下一个的地址时,指针直接p++就行了,不要多此一举的p+4了。

3、在void指针使用的时候,不能使用指针运算,因为void型编译器不能识别类型的长度(即指针所指对象的体积),p++这样就是不合法的,即不能进行数学运算,也不能使用*取值操作,想使用必须转换为其它的类型。

六、lisp怎么替换文本中的字符串?

使用它的一个替换功能进行文本编辑的字符串替换

七、c++常量字符串如何赋值?

1. string类型,直接赋值就可以了,例如:string str="abcd";

2. 对于char数组型变量,在声明时可以直接赋值,例如:char str[]="abcde";

当然也可以用char c[3]="ab"来进行初始化,但是这样做需要明确知道字符串的长度到底为多少,否则,假如字符串为“abc”,那么在进行赋值的时候就会报错,因为字符串的长度还有加上'\0',超过了3,会报错!所以为了更方便最好不要指定大小。

3. 对于char型指针,在声明时可以直接赋值,例如:char *ch="abc";

需要补充的是,对于char数组型变量,在非声明的时候进行赋值,不能直接赋值。

八、c语言中字符串怎么赋值?

C语言中,字符串的赋值主要有两种方法,第一种是通过指针的方式直接赋值,第二种是通过数组直接赋值。

1、指针式赋值。

通过程序的运行情况,可以知道:char *p = "hello";这种字符串的赋值方式是完全没有问题的。要理解这种赋值方式,首先得理解双引号(特别注意:这个是双引号,不要赋值的时候给弄了个单引号)在这个语句中做了什么工作。双引号主要做了3个工作,分别是:

(1)申请了空间(在常量区),存放了字符串。

(2)在字符串尾加上了“\0”。

(3)返回地址。

这里所返回的地址就赋值给了char *类型的指针变量p。

2、通过字符数组直接把字符串赋值。

九、C语言字符串数组如何赋值?

1、单字符赋值,可通过数组下标方式或指针方式,引用数组元素,进行赋值。

例子:

char a[10];

char ch='a';

for( i=0;i<10;i++ )

a[i]=ch+i ; //可通过数组下标引用数组元素,完成赋值

char *p;

for( p=a; p<a+10; p++ )

*p=ch++; //通过指针对数组相应元素赋

2、字符串赋值,可使用string.h头文件中的字符串操作函数进行赋值。

例子:

char a[10];

strcpy( a, "abcdefgh");

sprintf(a, "%s", "abcdefgh");

十、C语言中怎么字符串赋值?

需要准备的材料分别有:电脑、C语言编译器。

1、首先,打开C语言编译器,新建一个初始.cpp文件,例如:test.cpp。

2、在test.cpp文件中,输入C语言代码:char a[20];strcpy(a, "hello");printf("%s", a);。

3、编译器运行test.cpp文件,此时成功将字符串赋值给了字符串a并打印。

顶一下
(0)
0%
踩一下
(0)
0%
相关评论
我要评论
点击我更换图片