如何在使用标准C的终端中运行的实用程序中打印旋转光标?
我正在寻找打印的东西:\ |/ - 在屏幕上的相同位置一遍又一遍?
谢谢
问题:
.net框架是否有免费的printf/sprintf实现?除了以上链接,我找不到任何东西.
谢谢!
更新:
感谢您的帮助,即使您找不到任何东西.这意味着我必须自己做(我试图避免它,但是很好......)
我制作了一个支持基本格式字符串的sprintf函数,你可以在这里找到它:https:// sourceforge. net/projects/printfnet /.如果可以的话,我会尝试让它成为一个完整的实现.
在我的课上,我们正在编写自己的C的malloc()函数副本.为了测试我的代码(当前可以分配空间很好)我正在使用:
char* ptr = my_malloc(6*sizeof(char));
memcpy(ptr, "Hello\n", 6*sizeof(char));
printf("%s", ptr);
Run Code Online (Sandbox Code Playgroud)
输出通常是这样的:
Hello
Unprintable character
Run Code Online (Sandbox Code Playgroud)
有些调试认为我的代码本身并没有造成这种情况,因为ptr的内存如下:
[24个字节的元信息] [请求的字节数] [填充]
所以我认为printf正在进入填充,这只是垃圾.所以我进行了测试:
printf("%s", "test\nd");得到:
test
d
Run Code Online (Sandbox Code Playgroud)
这让我想知道,当DOES printf("%s",char*)停止打印字符时?
有没有什么办法让printf一个size_t没有任何第一投射,或产生编译器警告?(我总是编译-Wall.)
通过man我找到
printf("%*d", width, num);
Run Code Online (Sandbox Code Playgroud)
和
printf("%2$*1$d", width, num);
Run Code Online (Sandbox Code Playgroud)
是等价的.
但IMO的第二种风格应该是:
printf("%*d", num, width);
Run Code Online (Sandbox Code Playgroud)
但通过测试似乎man是正确的; 为什么?
我使用以下C++语法在Windows平台上输出浮点值:
printf("%.2f", 1.5);
Run Code Online (Sandbox Code Playgroud)
如果我在英文用户帐户上运行它,它的效果很好.我的假设是,如果我运行它,比如法国用户帐户,输出将是1,50而不是1.50.
为什么我看不到它以及如何产生我想要的结果?
我想知道如何在控制台中打印出彩色文字?我使用eclipse win64 os.它与编译器有关吗?任何人都可以在C中给出一个简单的例子,只有一个红色或任何颜色的hello世界文本?
我可以sprintf在我的应用程序中看到许多用于复制字符串的内容.
我有一个字符数组:
char myarray[10];
const char *str = "mystring";
Run Code Online (Sandbox Code Playgroud)
现在,如果我想要将字符串复制str到myarray,最好使用:
sprintf(myarray, "%s", str);
Run Code Online (Sandbox Code Playgroud)
要么
strncpy(myarray, str, 8);
Run Code Online (Sandbox Code Playgroud)
?
我无法printf在bash脚本中使用%e描述符打印变量.它会说
#!/bin/bash
a=14.9
printf %e 14.9;
Run Code Online (Sandbox Code Playgroud)
我知道这可能是一个非常简单的问题,但我对bash并不熟悉并且总是使用echo.另外,我无法在任何地方找到答案.
我跑的时候
$ ./test.text
./test.text: line 3: printf: 14.9: invalid number
0,000000
Run Code Online (Sandbox Code Playgroud)
因此我的问题是语言环境变量LC_NUMERIC:它被设置为使用逗号作为小数分隔符.事实上,它将成为欧洲本地化:
$ locale | grep NUM
LC_NUMERIC="it_IT.UTF-8"
Run Code Online (Sandbox Code Playgroud)
我以为我把它设置为en_US.UTF-8,但显然我没有.现在问题切换到找到如何设置我的语言环境变量.简单地使用
$ LC_NUMERIC="en_US.UTF-8"
Run Code Online (Sandbox Code Playgroud)
不行.
我有兴趣打印结构字段.
Typedef struct
{
UINT32 thread_id;
BOOL is_valid;
}T_THREAD;
Run Code Online (Sandbox Code Playgroud)
是否有一种方法用"C"语言来打印结构的内容,如
ex:print (T_THREAD)和输出应该是这样的
Contents of a structure T_THREAD are
thread_id
is_valid
Run Code Online (Sandbox Code Playgroud)