小编sim*_*onc的帖子

将字符串转换为2位小数

我有一个字符串(确认是十进制表达式)0.4351242134

我想转换为两位小数0.44的字符串

我该怎么做C#?

c#

9
推荐指数
3
解决办法
6万
查看次数

如何#include第三方图书馆

我已经构建并安装了一个名为OhNet的库.在安装make install了相应的框架头文件之后usr/local/include/ohNet.现在我想在我的C++项目中使用库(我正在使用eclipse)但是当我尝试包含一些头文件时,eclipse无法找到这些文件.据我所知,eclipse应默认搜索这些目录中的头文件(/ usr/include,/ usr/local/include,...)....我需要做什么才能使用该库?我是C++的新手,之前没有使用过第三方资源.

谢谢.

--EDIT--我只想写一个简单的"helloworld"程序来验证我是否正确地包含了框架.为了做到这一点,我想要实现课程OpenHome::Net::DvDeviceStdStandard.请参阅:ohNet C++参考

我现在可以使用包含头文件: #include <ohNet/OpenHome/Net/Core/DvDevice.h>工作正常.但是我怎么能创建一个类型的对象OpenHome::Net::DvDeviceStdStandard?现在?Eclipse说这种类型无法解决.:(

#include <iostream>
#include <ohNet/OpenHome/Net/Core/DvDevice.h>

using namespace std;

int main() {

    OpenHome::Net::DvDeviceStdStandard device; //type cannot be resolved
    cout << "!!!Hello World!!!" << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ build include include-path libraries

8
推荐指数
1
解决办法
2万
查看次数

获取两个内存地址之间的差异

我有一个的内存地址int *:0xbfde61e0。我还有另一个内存地址(也就是int *。如何计算两者之间的差异以用作两个位置之间的偏移量?

c memory

7
推荐指数
2
解决办法
2万
查看次数

使用"this"关键字时,"错误:表达式必须具有指针类型"

所以我创建了一个父类,我将调用Parent它有一个Square*网格成员变量.grid变量是指向包含key成员变量的大型Square数组的指针.(将此项目视为哈希表)问题是我在Parent类中编写一个函数来编辑Square数组中的关键变量,并获得错误.这行代码编译:

this->grid = new Square[row*col];
Run Code Online (Sandbox Code Playgroud)

但这行不编译:

this->grid[i*col + j]->key1 = j;
Run Code Online (Sandbox Code Playgroud)

它强调this并表示表达式必须具有指针类型.我想知道是否有人对我可能做错了什么有想法?

void Parent::initialize(int row,int col) {
    this->grid = new Square[row*col];
    for(int i = 0; i < row; i++) {
        for(int j = 0;j < col; j++) {
            this->grid[i*col + j]->key1 = j;
            this->grid[i*col + j]->key2 = i;
        }
    }
Run Code Online (Sandbox Code Playgroud)

c++ this

7
推荐指数
2
解决办法
5万
查看次数

C:只读取文件的最后一行.没有循环

使用C,有没有办法读取文件的最后一行而不循环它的整个内容?

事情是该文件包含数百万行,每行包含一个整数(long long int).文件本身可能非常大,我认为甚至高达1000mb.我确定最后一行不会超过55位数,但也可能只有2位数.使用任何类型的数据库都没有选择...我已经考虑过了.

也许这是一个愚蠢的问题,但是来自PHP背景我觉得很难回答.我到处找,但一无所获干净.

目前我正在使用:

if ((fd = fopen(filename, "r")) != NULL) // open file
{
    fseek(fd, 0, SEEK_SET); // make sure start from 0
    while(!feof(fd))
    {
        memset(buff, 0x00, buff_len); // clean buffer
        fscanf(fd, "%[^\n]\n", buff); // read file *prefer using fscanf
    }
    printf("Last Line :: %d\n", atoi(buff)); // for testing I'm using small integers
}
Run Code Online (Sandbox Code Playgroud)

这样我循环文件的内容,一旦文件大于~500k行,事情就会慢下来......

先感谢您.格言

c file-io

7
推荐指数
2
解决办法
2万
查看次数

为什么C代码中的输出从数字1而不是0开始计算数组索引?

所以我在一个C代码中得到了这个字符串,我从一本书中有一个引用,然后是另一个字符串,其中有一个单词来自该引用.当它告诉程序找到子串的位置时,它从数字1开始计数而不是0.这是为什么?这就是我的意思:

#include <stdio.h>
#include <string.h>

int main()
{
    char str[]="No Time like the Present";
    char sub[]="Time";
    if (strstr(str, sub)== NULL)
    {
        printf("not found");
    }
    else
    {
        printf("Index number found at %d",strstr(str,sub)-str);
    }
    return 0
}
Run Code Online (Sandbox Code Playgroud)

所以它会说:索引在3号找到

但是不应该是在2号找到的打印索引,因为你从零开始?或者你有时可以从数字1开始??

c

7
推荐指数
2
解决办法
208
查看次数

程序会在valgrind memcheck中提前终止

我有一个C编程(很多数字,很长,不能发布),我编译

gcc -g -O0 program.c -o program
Run Code Online (Sandbox Code Playgroud)

我正在尝试使用gdb和valgrind memcheck进行调试.在对代码进行一些更改后我发现了

valgrind --tool=memcheck --log-file=output.log ./program
Run Code Online (Sandbox Code Playgroud)

==15866== Memcheck, a memory error detector
==15866== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.
==15866== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info
==15866== Command: ./program
==15866== Parent PID: 3362
==15866== 
==15866== Warning: client switching stacks?  SP change: 0xbe88bcd8 --> 0xbe4e1f70
==15866==          to suppress, use: --max-stackframe=3841384 or greater
==15866== Invalid write of size 4
==15866==    at 0x804B7BE: main (program.c:1396)
==15866== …
Run Code Online (Sandbox Code Playgroud)

c gcc gdb valgrind

6
推荐指数
1
解决办法
2848
查看次数

SQLServerException:与主机的TCP/IP连接失败

当我运行Web应用程序时,我收到一条错误消息

"与主机的TCP/IP连接,端口1433已失败.错误:"连接超时.验证的连接属性,检查的SQL Server的一个实例是在主机上运行,​​并在端口接受TCP/IP连接,并且没有防火墙阻止到该端口的TCP连接".

TCP/IP处于活动状态且已启用,TCP端口默认为1433.但我仍然收到此错误消息.

有人可以帮我吗?

sql-server

6
推荐指数
1
解决办法
2万
查看次数

仅在右侧和底部创建阴影

如何在createjs中仅在对象的右侧和底侧绘制阴影.物体上方或顶部和左侧没有阴影.

阴影只包含4个参数
1.阴影的颜色2. x 3. y 4.模糊效果但它没有告诉任何关于4个不同的边.

var box = createjs.Shape();
box.shadow = new createjs.shadow('#000',4,4,5);
Run Code Online (Sandbox Code Playgroud)

上面的代码在对象的顶部和左侧部分生成一些模糊部分.

shadow createjs

6
推荐指数
1
解决办法
1336
查看次数

C - 在第一次recv()调用后"传输端点未连接"

我刚开始用C学习网络编程.我做了一些测试,但是我遇到了错误.

我有一个客户:

client.c

#include <string.h>
#include <netdb.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <errno.h>

int main(void)
{
    struct addrinfo hints, *res;
    int sock;

    memset(&hints, 0, sizeof hints);
    hints.ai_family = AF_UNSPEC;
    hints.ai_socktype = SOCK_STREAM;

    getaddrinfo("localhost", "5996", &hints, &res);
    sock = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
    connect(sock, res->ai_addr, res->ai_addrlen);
    char data[64];
    int len = 13;
    int br = recv(sock, data, len, 0);
    printf("%s\n%s\n%d\n", strerror(errno), data, br);
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

和服务器:

server.c

#include <string.h>
#include <netdb.h>
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h> …
Run Code Online (Sandbox Code Playgroud)

c sockets recv

5
推荐指数
1
解决办法
9556
查看次数

标签 统计

c ×5

c++ ×2

build ×1

c# ×1

createjs ×1

file-io ×1

gcc ×1

gdb ×1

include ×1

include-path ×1

libraries ×1

memory ×1

recv ×1

shadow ×1

sockets ×1

sql-server ×1

this ×1

valgrind ×1